代码之家  ›  专栏  ›  技术社区  ›  user2896120

将数据帧列转换为数组

  •  2
  • user2896120  · 技术社区  · 6 年前

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

    1 回复  |  直到 6 年前
        1
  •  4
  •   user3483203    6 年前

    使用 df.values 而不是 apply :

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