【发布时间】:2021-01-25 14:03:31
【问题描述】:
你好,所以我有一个数据框,其中有某事发生在一列中的时间以及它在下一列中结束的时间。我需要尝试找出两者之间的时间差,但它们都是字符串,所以它不会简单地让我比较它们,有没有办法可以将它们更改为整数(它们的格式为 HH:MM:SS)我找到了使用 .split 拆分它们的方法(我已经把我最初做的事情放在下面,我可以对第二列做同样的事情并从那里解决它们,但我想知道是否有更简单的方法? ... 蒂亚!
q = 0
for int in range(long):
intel = df_data_bad_time1.loc[q,'Time']
H_M_S = intel.split(':')
df_data_bad_time1.loc[q,'Hours'] = H_M_S[0]
df_data_bad_time1.loc[q,'Mins'] = H_M_S[1]
df_data_bad_time1.loc[q,'Secs'] = H_M_S[2]
q = q + 1
df_data_bad_time1['Hours'] = pd.to_numeric(df_data_bad_time1['Hours'], errors='coerce').astype('Int64')
df_data_bad_time1['Mins'] = pd.to_numeric(df_data_bad_time1['Mins'], errors='coerce').astype('Int64')
df_data_bad_time1['Secs'] = pd.to_numeric(df_data_bad_time1['Secs'], errors='coerce').astype('Int64')
df_data_bad_time1.head(15)
【问题讨论】:
-
使用这里描述的 timedelta kite.com/python/answers/…。
-
谢谢,我试过了,但是因为它是一个字符串而不是一个 int,所以它不允许它
-
用 int(valuetoconvert) 将其转换为 int。
-
如果我尝试它只是说“'int' object is not callable”
标签: python string time integer calculation