python - 将数据框列转换为数组

标签 python pandas

我正在尝试将数据帧列转换为数组。例如,我有一个如下所示的数据框:

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"] 并且是一个对象而不是数组。如何将所有列转换为数组?

最佳答案

使用df.values而不是apply:

>>> df.values.T.tolist()
[[2, 1], [3, 5], ['C', 'D']]

关于python - 将数据框列转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51992912/

相关文章:

python - 如何跨多列使用 groupby 转换

python - 如何为 pandas groupby 分配顺序标签?

python - 如何找出每种产品在 Pandas DataFrame 中的销量

python - Dask:为什么CPU使用率突然下降?

python - 多索引数据帧内的操作

python - 如何使用许多工作人员发送 slurm 作业,而不仅仅是在本地模式下运行?

python - 导入仅在 Python 函数内部起作用

python - 合并具有相同命名组的正则表达式

Python 自定义迭代器 : Close a file on StopIteration

python - 加快附近组的计算?