Python Pandas - Создать новый столбец df на основе критериев соответствия - PullRequest
0 голосов
/ 03 мая 2018

Я пытаюсь создать новый столбец в моем фрейме данных pandas (df). Значение для каждой строки в этом столбце (назовите его column_new) должно смотреть на справочный столбец (column_ref), который уже существует во фрейме данных. Я использовал уникальные значения в column_ref и назначил их в качестве ключей в словаре, d:

d = {'column_ref_value1': 'a',
     'column_ref_value2': 'b', 
     'column_ref_value3': 'c',}

Значения в dict (d) - это значения, которые я хочу назначить для column_new в моем фрейме данных. Вот что я пытался безрезультатно:

for i in df['column_ref']:
    for k, v in d.items(): 
        if k == i:
            df['column_new'] = v

Когда я вызываю свой df, я вижу column_new, заполненное значением 'c' в каждой строке, и я не уверен, почему. Я предполагаю, что моя проблема связана с неправильной итерацией по фрейму данных или рядам панд.

Заранее спасибо!

1 Ответ

0 голосов
/ 03 мая 2018

Вы можете использовать replace () :

df['column_new'] = df.replace({'column_ref': d})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...