当我这样做
df.dtypes
,显示为
utc_time int64
utc_time的一个示例是: 1536444323321
我在这里找到了将utc_time(纪元)更改为星期几的代码
df['Week_Day'] =
datetime.fromtimestamp(df['utc_time']/1000).strftime("%A")
但是我收到此错误:
TypeError Traceback (most recent call
last)
<ipython-input-124-b3277c232078> in <module>()
2 # df['intage'] = df['utc_time'].astype(int)
3 # df['intage'] = df['utc_time'].dt.days
----> 4 df['Week_Day'] =
datetime.fromtimestamp(df['utc_time']/1000).strftime("%A")
/anaconda3/lib/python3.6/site-packages/pandas/core/series.py in
wrapper(self)
115 return converter(self.iloc[0])
116 raise TypeError("cannot convert the series to "
--> 117 "{0}".format(str(converter)))
118
119 return wrapper
TypeError: cannot convert the series to <class 'int'>
答案 0 :(得分:1)
首先,将您的列/系列转换为日期时间对象。
df['column'] = pd.to_datetime(df['column'])
然后,您有两个选择:
选项1-使用.dt
访问器:
df['column'].dt.weekday
为您提供工作日为整数
选项2-使用熊猫Timestamp
对象:
df['column'].apply(pd.Timestamp.weekday)
但是我真的推荐选项1。