【问题标题】:Create array in array python在数组python中创建数组
【发布时间】:2021-12-11 16:59:17
【问题描述】:

我有一个这样的数据框:

ID Date Rank Info -
12 12/5 1 Anne
12 12/5 2 Louis
12 12/5 3 Nico
12 12/5 4 Vic
13 15/5 2 Stephanie
13 15/5 3 Athene
13 15/5 4 Louis

如何创建条件相同的 id 和日期的数组“Rank”?

解决方案: [[1,2,3,4],[2,3,4]]

【问题讨论】:

    标签: python arrays pandas dataframe


    【解决方案1】:

    使用.agg:

    res = df.groupby(["ID", "Date"])["Rank"].agg(list).tolist()
    print(res)
    

    输出

    [[1, 2, 3, 4], [2, 3, 4]]
    

    如果列表中的numpy.array 是预期输出,则另一种选择:

    res = df.groupby(["ID", "Date"])["Rank"].agg(list).to_numpy()
    print(res)
    

    输出

    [list([1, 2, 3, 4]) list([2, 3, 4])]
    

    【讨论】:

    • 你是对的,但我想指出你所说的数组实际上是列表。如果要使用数组,则必须导入 array 模块或使用 NumPy 数组。您可以在this 链接中找到有关列表和数组之间区别的更多信息。
    猜你喜欢
    • 2017-06-20
    • 2020-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-31
    • 2021-12-17
    相关资源
    最近更新 更多