将 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()
我有一个包含多个列的数据框,其中 '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()