在str对象上使用'to_datetime' - 以更改数据框列名

时间:2018-04-25 11:16:42

标签: python pandas

这是对被问及here的问题的跟进问题。

我在数据框中有大约200个列名称需要转换为日期时间格式。

我的首要想法是创建一个列名列表,然后通过列表进行迭代,按照我的方式进行转换,然后使用转换后的名称列表重命名数据帧的列。但是从上一个问题来看,我不确定是否可以将to_datetime应用于常规字符串元素。所以这种方法不起作用。

无论如何,使用to_datetime轻松转换所有列,或至少是所选列?

我在documentation

中看不到要选择的轴

pandas.to_datetime(arg,errors ='raise',dayfirst = False,yearfirst = False,utc = None,box = True,format = None,exact = True,unit = None,infer_datetime_format = False,origin =' UNIX')[源]¶

1 个答案:

答案 0 :(得分:1)

功能to_datetime仅适用于SeriesDataFrame列),因此可能的解决方案是:

df = df.apply(pd.to_datetime)
#alternative
#df = df.apply(lambda x: pd.to_datetime(x))

或者:

for c in df.columns:
    df[c] = pd.to_datetime(df[c])

对于转换列名称:

df.columns = pd.to_datetime(df.columns)