问题描述
我有一个数据框(数据),其中一列('BEG_DT')是以 YYYYmmdd 格式表示日期的字符串(例如 19490713 = 1949,July,13)。
data[data.columns[0:3]].head()
NCDC BEG_DT END_DT
1 10000001 19490713 19501115
2 10000001 19590701 19621001
3 10000001 19621001 19630129
4 10000001 19630129 19670125
5 10000001 19670125 19800205
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 277297 entries,0 to 277296
Data columns (total 32 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 NCDC 277297 non-null object
1 BEG_DT 277297 non-null object
2 END_DT 277297 non-null object
type(data.iloc[1]['BEG_DT'])
str
我需要将 BEG_DT 列转换为日期时间列。当我使用以下内容时:
pd.to_datetime(data['BEG_DT'],format='%Y%m%d')
我明白了:
TypeError Traceback (most recent call last)
<ipython-input-98-61a349589cf7> in <module>
----> 1 pd.to_datetime(data['BEG_DT'],format='%Y%m%d')
TypeError: 'Series' object is not callable
我可以用这个玩具示例重现同样的错误:
ser1 = ['A','B','C']
ser2 = ['19920525','19430224','19590216']
adf=pd.DataFrame({'col1':['A','C'],'col2':['19920525','19590216']})
adf
col1 col2
0 A 19920525
1 B 19430224
2 C 19590216
adf['Date']=pd.to_datetime(adf['col2'])
TypeError Traceback (most recent call last)
<ipython-input-111-48d6423da8db> in <module>
----> 1 adf['Date']=pd.to_datetime(adf['col2'])
TypeError: 'Series' object is not callable
我相信根据 Pandas to_datetime 文档的语法是正确的,所以我对它的工作原理的理解是不正确的。有人可以解释一下我做错了什么吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)