到列表列表而不改变值的数据类型

到列表列表而不改变值的数据类型

本文介绍了DataFrame 到列表列表而不改变值的数据类型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

df.values.to_list()list(df.values) 将数据帧转换为列表列表,但整数值转换为浮点值

df.values.to_list() or list(df.values) converts dataframe to list of lists, but the integer values are converted to float values

DataFrame 是,

DataFrame is,

   HSCode  value  year
0       2   0.18  2018
1       3   0.00  2018
2       4  12.48  2018
3       6   0.00  2018
4       7   1.89  2018

需要的输出是

[[2,0.18,2018],[3,0.00,2018]..]

但是 df.values.tolist() 给出

[[2.0,0.18,2018.0],...]

推荐答案

itertuples

list(map(list, df.itertuples(index=False)))

[[2, 0.18, 2018],
 [3, 0.0, 2018],
 [4, 12.48, 2018],
 [6, 0.0, 2018],
 [7, 1.89, 2018]]

更简洁

可读性要差得多

[*map(list, zip(*map(df.get, df)))]

[[2, 0.18, 2018],
 [3, 0.0, 2018],
 [4, 12.48, 2018],
 [6, 0.0, 2018],
 [7, 1.89, 2018]]

这篇关于DataFrame 到列表列表而不改变值的数据类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-24 13:52