0

我有一个由其他代码生成的熊猫数据框 - 每次生成数据框时可能有不同数量的列:让我们col1,col2,...,coln在 n 不固定的情况下调用它们。请注意 col1,col2,... 只是占位符,列的实际名称可以是任意的,例如 TimeStamp 或 PrevState。

由此,我想将每一列转换为一个列表,列表的名称与列相同。所以,我想要一个以col1数据框第一列中的条目命名的列表,依此类推,直到coln.

我该怎么做呢?

谢谢

4

2 回答 2

2

推荐,最好是创建字典:

d = df.to_dict('list')

然后从列名中按 dict 键选择列表:

print (d['col'])

样品

df = pd.DataFrame({
        'A':list('abcdef'),
        'B':[4,5,4,5,5,4],
        'C':[7,8,9,4,2,3],
})

d = df.to_dict('list')
print (d)
{'A': ['a', 'b', 'c', 'd', 'e', 'f'], 'B': [4, 5, 4, 5, 5, 4], 'C': [7, 8, 9, 4, 2, 3]}

print (d['A'])
['a', 'b', 'c', 'd', 'e', 'f']
于 2020-09-03T08:38:14.283 回答
-1
import pandas as pd

df = pd.DataFrame()
df["col1"] = [1,2,3,4,5]
df["colTWO"] = [6,7,8,9,10]

for col_name in df.columns:
    exec(col_name + " = " + df[col_name].values.__repr__())
于 2020-09-03T08:53:26.460 回答