我正在尝试将数据框列转换为数组。例如,我有一个看起来像这样的数据框:
Total Price Carrier
2 3 C
1 5 D
我想将列转换成这样的数组:[[2, 1], [3,5], ['C','D]]
我不需要列名。
我尝试这样做:
df["all"] = 1
df.groupby("all")[["Total","Price", "Carrier"]].apply(list)
但是,我得到的是类似["Total", "Price", "Carrier"]
的东西,它是一个对象而不是数组。如何将所有列转换为数组?
答案 0 :(得分:4)
使用df.values
代替apply
:
>>> df.values.T.tolist()
[[2, 1], [3, 5], ['C', 'D']]