2015-11-24 2 views
1

У меня есть словарь с значениями JSON, привязанный к значению столбца (name) в моем кадре данных, и я хочу добавить некоторые столбцы в кадр данных, взятый из словаря.Добавить столбец в Pandas DataFrame на основе формулы

Я пытался сделать это с чем-то вроде:

df['district_name'] = data[df['name']]['district_name'] 

, но это не работает (это дает «серии не являются допустимыми ключами», который имеет смысл, я никогда не понимал черной магии, которая позволяет работать df['col3'] = df['col1'] + df['col2']). Другие ответы здесь привели меня попробовать что-то вроде:

df['district_name'] = df.apply(lambda row:data[row['name']]['district_name']) 

Это дает мне KeyError: ('name', 'occurred at index Name').

Как я могу это сделать?

+0

Вы можете предоставить некоторые данные испытаний? –

ответ

2

Вы совсем близко. Попробуйте следующее:

df['district_name'] = df['name'].map(data.get)['district_name'] 
Смежные вопросы