df我有一个带有 type 列的pandas 数据框pandas.Timestamp,我需要将其转换为列表列表(每行的列表)。当我使用时,df.values我确实得到了一个列表列表,但是类型被转换为datetime64稍后在我的代码中导致问题的类型。例子:import pandas as pdpd.DataFrame([pd.Timestamp('2020-01-01')]).valuesOut[259]: array([['2020-01-01T00:00:00.000000000']], dtype='datetime64[ns]')如果我pandas.Series.to_list分别在每一列上使用,则保留类型:pd.DataFrame([pd.Timestamp('2020-01-01')])[0].to_list()Out[261]: [Timestamp('2020-01-01 00:00:00')]但是,如果我有多个列,它会变得不方便,因为我需要将它应用于每一列并使用它zip来获取时间戳列表的列表。没有这种类型转换,有没有更直接的方法来获取值?
1 回答
偶然的你
TA贡献1841条经验 获得超3个赞
您可以使用 to_dict 方法将方向指定为列表
df = pd.DataFrame([ { 'a' : pd.Timestamp('2020-01-01') , 'b' : pd.Timestamp('2020-01-01')}] )
In [55]: df
Out[55]:
a b
0 2020-01-01 2020-01-01
In [56]: list(df.to_dict('list').values())
Out[56]: [[Timestamp('2020-01-01 00:00:00')], [Timestamp('2020-01-01 00:00:00')]]
添加回答
举报
0/150
提交
取消