#python #pandas
#python #pandas
Вопрос:
У меня есть фрейм данных в Pandas, в котором есть столбцы, которые будут соответствовать ключу и значению dict.
for values in ['A','B']:
MYDICT[values] = [] # Initialize to empty list
Name ID othercolumns
A 5 ...
B 6 ...
A 3 ...
Я пытаюсь найти простой способ присвоить каждому значению Name идентификатор, чтобы MYDICT[NAME].append(ID)
Решение, которое у меня есть в настоящее время, заключается в переборе каждой строки в dataframe
for index, x in df.iterrows():
WINNERS[x['Name']].append(x['ID'])
Есть ли лучший способ сделать это без необходимости использования iterrows()
?
Комментарии:
1. Вы не можете назначить тот же ключ для dict
2. Каков ваш ожидаемый результат?
Ответ №1:
Вы можете группировать Name
и объединять ID
в список
WINNERS = df.groupby('Name')['ID'].apply(list).to_dict()
WINNERS
Out:
{'A': [5, 3], 'B': [6]}