Отображение для разделенных запятыми рядов в кадре данных Pandas - PullRequest
0 голосов
/ 04 октября 2019

У меня есть разделенный запятыми столбец (col1) в кадре данных (df). Мне нужен новый столбец (col2), который принимает отображение (map) и выводит новые значения, если есть отображение. Я достиг этого наивным способом, как показано ниже. Я смотрю, как это может быть сделано питоническим / пандасным способом.

Пример -

import pandas as pd
import numpy as np
df = pd.DataFrame({'col1': ['A, B', 'B, C', 'D']})
map = {'A':'Z', 'B':'Y'}

df['col2'] = None
df['col2'] = np.where(df.col1.str.contains('A'), 'Z', df.col2)
df['col2'] = np.where(df.col1.str.contains('B'), np.where(pd.isnull(df.col2), 'Y', df.col2.astype(str)+', Y'), df.col2)

Вот предполагаемый вывод

Intended output

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...