python Pandas |为每一列创建单独的列表

标签 python list pandas dataframe tolist

我不确定如何使用 tolist 来实现以下目标。我有一个这样的数据框:

Param_1     Param_2     Param_3
-0.171321   0.0118587   -0.148752
1.93377     0.011752    1.9707
4.10144     0.0112963   4.06861
6.25064     0.0103071   5.83927

我想要的是为每一列创建单独的列表,列表名称是列标签。

我不想继续做:

Param_1 = df["Param_1"].values.tolist()

如果有办法做到这一点,请告诉我。谢谢。

最佳答案

添加.T

df.values.T.tolist()
Out[465]: 
[[-0.171321, 1.93377, 4.10144, 6.25064],
 [0.0118587, 0.011752, 0.011296299999999999, 0.0103071],
 [-0.148752, 1.9707, 4.06861, 5.83927]]

或者我们可以创建dict

{x:df[x].tolist() for x in df.columns}
Out[489]: 
{'Param_1': [-0.171321, 1.93377, 4.10144, 6.25064],
 'Param_2': [0.0118587, 0.011752, 0.011296299999999999, 0.0103071],
 'Param_3': [-0.148752, 1.9707, 4.06861, 5.83927]}

或者使用 locals(不推荐,但似乎是你需要的)

variables = locals()
for key in df.columns:
    variables["{0}".format(key)]= df[key].tolist()
Param_1
Out[501]: [-0.171321, 1.93377, 4.10144, 6.25064]

关于 python Pandas |为每一列创建单独的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51529545/

相关文章:

python - 语法错误: Python keyword not valid identifier in numexpr query

python - PyPy 3.5 上的 Pandas 明显比 Python 3.6 慢

Python数据框: Create function that makes all values in one column uppercase

python - plt.tight_layout() 与 sns.clustermap

python - Python 中的静态类方法属性

python - 如何在 Django 中创建相关模型的实例

python - 我如何在 pandas 数据框中找到一行的 iloc?

python - 根据条件从列表中删除项目

java - 排序结果在 Java 中以 A, a, B, b... 的形式递增返回

python - 这两个实现有什么区别?