我有一个包含多列的Python DataFrame。
2u 2s 4r 4n 4m 7h 7v
0 1 1 0 0 0 1
0 1 0 1 0 0 1
1 0 0 1 0 1 0
1 0 0 0 1 1 0
1 0 1 0 0 1 0
0 1 1 0 0 0 1
我想要做的是将此pandas.DataFrame
转换为如下列表
X = [
[0, 0, 1, 1, 1, 0],
[1, 1, 0, 0, 0, 1],
[1, 0, 0, 0, 1, 1],
[0, 1, 1, 0, 0, 0],
[0, 0, 0, 1, 0, 0],
[0, 0, 1, 1, 1, 0],
[1, 1, 0, 0, 0, 1]
]
2u 2s 4r 4n 4m 7h 7v是列标题。它会在不同情况下发生变化,所以不要为此烦恼。
答案 0 :(得分:63)
它看起来像一个转置矩阵:
df.values.T.tolist()
[list(l) for l in zip(*df.values)]
[[0, 0, 1, 1, 1, 0],
[1, 1, 0, 0, 0, 1],
[1, 0, 0, 0, 1, 1],
[0, 1, 1, 0, 0, 0],
[0, 0, 0, 1, 0, 0],
[0, 0, 1, 1, 1, 0],
[1, 1, 0, 0, 0, 1]]
答案 1 :(得分:1)
要将Dataframe更改为列表,请使用tolist()函数进行转换 假设我有Dataframe df
要更改为列表,您只需使用tolist()函数
df.values.tolist()
您还可以使用来更改列表中的特定列
df['column name'].values.tolist()