Я видел некоторые сообщения, которые работают, когда словарь использует одно значение на ключ. Однако я хотел бы использовать словарь с несколькими значениями для каждого ключа.
myDict = {'0': ['a', 'b', 'c'], '1': ['e', 'f'], '2': ['z','x','y']}
Я хотел бы создать новый столбец, чтобы все a
, b
и c
стали 0
и т. Д., В результате чего:
col1, col2
a, 0
f, 1
a, 0
x, 2
e, 1
На основании пары других ответов я попробовал это, но это не сработало:
df['col2'] = df['col1'].apply(lambda x: a for a, b in myDict.items() if x in b)
Моя другая мысль состоит в том, чтобы просто создать словарь, подобный {'a':'0', 'b':'0'}
, и отобразить его, но мне было любопытно более краткий способ, если мои списки были очень длинными (каждый ключ имел список из 30 значений). Или это лучший способ?