36

我有一个带有多列的 pandas 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 是列标题。它会在不同的情况下改变,所以不要在意。

4

2 回答 2

73

它看起来像一个转置矩阵:

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]]
于 2013-02-27T12:34:42.583 回答
2

要将 Dataframe 更改为列表,请使用 tolist() 函数进行转换假设我有 Dataframe df

要更改为列表,您可以简单地使用 tolist() 函数

df.values.tolist()

您还可以使用以下方法将特定列更改为列表

df['column name'].values.tolist()
于 2020-02-15T17:32:09.853 回答