【发布时间】:2019-06-24 06:34:16
【问题描述】:
我正在处理一个名为“Data”的数据框,它包含两列,一列是用户 ID,另一列是日期时间对象:
userid | eventTime
1 | 2018-11-01 07:36:58
2 | 2018-11-07 08:04:12
.. | ....
我现在的目标是将此数据框列 eventTime 中的条目替换为特定月份中的天数作为整数值,例如十一月的第一天 (=1) 和十一月的第七天 (=7)。
所以结果应该是
userid | eventTime
1 | 1
2 | 7
.. | ....
我怎样才能完成这项工作?
我已经从数据框中提取了索引并尝试循环修改它,但我不知道它应该如何工作:
temp = Data.index.get_values() #get indices from data frame
for temp, row in Data.iterrows():
print(row['eventTime'])
【问题讨论】:
-
你问我们怎么办
datetime.datetime(1970, 1, 1).day?如果是这样,不问问题而是自己找到对象包含的内容的一个非常好的方法是执行print(dir(variable))。在这种情况下,您会清楚地看到您可以为 datetime 对象执行.day或.year。 -
嗨@Torxed,我首先将数据从字符串转换为日期时间对象
Data["eventTime"] = [datetime.strptime(x, '%Y-%m-%d %H:%M:%S') for x in Data["eventTime"]],不幸的是我不知道如何从中提取日期。这真的是我的问题...... -
Data["eventTime"][0].day看起来。
标签: python-3.x datetime dataframe integer transform