【问题标题】:How to make a column of set of lists in python?如何在python中制作一列列表集?
【发布时间】:2020-07-19 05:28:40
【问题描述】:

我手头有一个数据框,现在我想在该数据框中再添加一列。该列将是一组列表,即,如果数据框的长度为 10,则该列将由 10 个列表组成。每一行与一个列表相关联。我怎么能做这个?最初这些列表将是空白列表,以便我可以进一步附加对象。

【问题讨论】:

标签: python-3.x list dataframe


【解决方案1】:

我可以用这个代码回答你的问题(df 的长度是 3 而不是 10)

    import pandas as pd

    df = pd.DataFrame([{'Name': 'Chris', 'Item Purchased': 'Sponge', 'Cost': 22.50},
               {'Name': 'ABC', 'Item Purchased': 'Chocolate', 'Cost': 2.50},
               {'Name': 'Filip', 'Item Purchased': 'Spoon', 'Cost': 5.00}],
              index=['Store 1', 'Store 1', 'Store 2'])
    df
    df['Date'] = [['December 1','December 10'], ['January 1','February 5'], ['mid- 
    May','mid-September']]
    df

图像显示输出

【讨论】:

    【解决方案2】:

    pandas Dataframe 中的新列可以像这样简单地添加:

    df['new_column_name'] = your_list
    

    如果your_list 是嵌套的,您可以通过通常的append 函数将新值附加到其元素中(例如,通过df['new_column_name'][0].append(value) 将新值附加到your_list[0]

    【讨论】:

      【解决方案3】:

      我可以给出我认为的问题的答案。 假设我有一个名为 XYZ 的数据集,它有 @ 列 A,B。现在我想再添加一个列 C,它是一组列表,即列表的数量与行数相同。 XYZ = pd.read_csv('untitled.csv', usecols = ['A', 'B']) XYZ['C'] = pd.Series([]*len(XYZ), dtype = object) for i in range(len(XYZ)): XYZ['C'][i] = []

      【讨论】:

        猜你喜欢
        • 2017-01-17
        • 1970-01-01
        • 2013-10-29
        • 1970-01-01
        • 1970-01-01
        • 2019-05-09
        • 2016-11-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多