在数据帧行和列名中转换为日期时间时的不同输出(Pandas-Python)
Pandas的方法“to_datetime”允许我们将字符串转换为datetime对象。不过,在转换数据帧行和列标签时,此方法似乎有不同的输出 假设df是一个数据框,其行和列标签中有相同的日期字符串:在数据帧行和列名中转换为日期时间时的不同输出(Pandas-Python),python,pandas,string,dataframe,datetime,Python,Pandas,String,Dataframe,Datetime,Pandas的方法“to_datetime”允许我们将字符串转换为datetime对象。不过,在转换数据帧行和列标签时,此方法似乎有不同的输出 假设df是一个数据框,其行和列标签中有相同的日期字符串: import pandas as pd d = {'01-01-2001': ['01-01-2001'], '02-02-2002': ['02-02-2002'],'03-03-2003': ['03-03-2003']} df = pd.DataFrame(data=d) 现在,让我们
import pandas as pd
d = {'01-01-2001': ['01-01-2001'], '02-02-2002': ['02-02-2002'],'03-03-2003': ['03-03-2003']}
df = pd.DataFrame(data=d)
现在,让我们将这些数据转换为datetime:
df.columns = pd.to_datetime(df.columns)
df.loc[0] = pd.to_datetime(df.loc[0])
当列标签输出可读的日期时间数据时,行输出不同的格式。为什么?如何获得数据帧行中的可读数据?您可以使用strftime重新格式化日期
df.loc[0] = pd.to_datetime(df.columns).strftime(date_format='%Y-%m-%d')
输出
df
Out[400]:
2001-01-01 2002-02-02 2003-03-03
0 2001-01-01 2002-02-02 2003-03-03
因为数据类型已经是一个对象,所以需要更改列的数据类型,而不是行,才能使其工作