首页 > 解决方案 > 如何从熊猫创建自定义列表?

问题描述

我有一个数据框如下:

Country Age     Dept    Card
India   Adult   Science A,B,C
India   Adult   Math    B,C,D
India   Adult   Social  E,D,C

构建上述 DF 的代码:

pd.DataFrame ({'Country' : ['INDIA','INDIA','INDIA'],
                         'Age' : ['Adult','Adult','Adult'],
                         'Dept' : ['Science','Math','Social'],
                         'Card' : ['A,B,C','B,C,D','E,D,C']})

我想从列的值中获取列表列表 - 'Card',如下所示:

[['A','B','C'], ['B','C','D'], ['E','D','C']]

我尝试了以下代码:

lis1=[]
for i in range(len(df)):
    lis=[]
    l=A.Card.iloc[i]
    lis.append(l)
    for i in range(0,len(df),len(df)):
        lis1.append(lis)

我得到的输出如下:

[['A,B,C'], ['B,C,D'], ['E,D,C']]

如果您能注意到,在我的输出中我没有得到单个元素的括号。谁能帮我获得所需的输出?

标签: pythonnumpy

解决方案


这会起作用:

[list(a.split(',')) for a in df.Card.tolist()]

输出是:

[['A', 'B', 'C'], ['B', 'C', 'D'], ['E', 'D', 'C']]

推荐阅读