[英]Trouble Applying Function to Each Cell in Pandas DataFrame
我有一个带有datetime类型的单列(“ publish_time
”)的Pandas DataFrame。 我只想获取时间,所以我尝试了如下操作:
df.applymap(datetime.time)
不幸的是,我收到TypeError
:
TypeError: ('an integer is required', u'occurred at index publish_time')
我在这里有点迷茫,因为我将datetime
函数应用于一堆datetime
对象,所以我不知道为什么Python需要整数。 有什么建议么?
谢谢!
使用dt
访问器,您可以通过向量化方式获取时间分量:
df = pd.DataFrame({'publish_time': ['20170606 12:04', '20170606 17:02']})
df
Out:
publish_time
0 20170606 12:04
1 20170606 17:02
df['publish_time'] = pd.to_datetime(df['publish_time'])
df['publish_time'].dt.time
Out:
0 12:04:00
1 17:02:00
Name: publish_time, dtype: object
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.