将 pandas 数据框的选定列转换为列表

convert selected columns of a pandas dataframe to list

我有一个包含多个列的数据框,其中 'value1' 和 'value2':

   value1  value2    other
0      13       8    xxxxx
1      14       7    xxxxx
2      17       7    xxxxx
3      18       7    xxxxx
4      19       8    xxxxx

目前我必须手动编辑 my_list 值,它们是成对的值,格式如下。

my_list = [[13,8],[14,7],[17,7],[18,7],[19,8]]

但是我已经能够将数据放入名为 value1 和 value2 的两列中的 pandas 数据帧中,例如在 pandas 中的第一行 value1 = 13 和 value2 = 8等等

有没有一种方法可以编写类似 tolist() 的方法来输出上述结构中的值列表?

简答

使用底层numpy数组的tolist方法:df.values.tolist()

df[['value1', 'value2']].values.tolist()到select只有一些列

详情

您可以从列表转换为 DataFrame,反之亦然:

import pandas as pd

my_list = [[13,8],[14,7],[17,7],[18,7],[19,8]]

# list to dataframe
df = pd.DataFrame(my_list, columns=['value1', 'value2'])

# dataframe to list
my_list = df.values.tolist()

my_list:

[[13,8],[14,7],[17,7],[18,7],[19,8]]

df:

   value1  value2
0      13       8
1      14       7
2      17       7
3      18       7
4      19       8

如何仅将某些列转换为列表:

df[['value1', 'value2']].values.tolist()