Как создать индивидуальный список из панд? - PullRequest
0 голосов
/ 06 января 2019

У меня есть датафрейм, как показано ниже:

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']})

Я хотел получить список списков из значений столбца - «Карточка», как показано ниже:

[['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']]

Если вы можете заметить, что в моем выводе я не получаю скобки для отдельных элементов. Может ли кто-нибудь помочь мне получить желаемый результат?

Ответы [ 2 ]

0 голосов
/ 06 января 2019

Просто сделай это,

lis1=[]
for i in range(len(df)):
    l=df.Card.iloc[i].split(',')
    lis1.append(l)
lis1

Выход:

[['A', 'B', 'C'], ['B', 'C', 'D'], ['E', 'D', 'C']]
0 голосов
/ 06 января 2019

Это будет работать:

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

И вывод:

[['A', 'B', 'C'], ['B', 'C', 'D'], ['E', 'D', 'C']]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...