У меня есть список значений, которые я пытаюсь сопоставить со столбцом панды df
, а затем хотел бы создать словарь, который будет иметь значения списка в качестве ключей, а затем значения словаря из другого столбца из данныхРамка.
Вот мой список:
sample_list = [101,105,112]
Мой фрейм данных:
sample_df = pd.DataFrame([[101, "NJ"], [105, "CA"],[111, "MO"], [101, "NJ"], [112, "NB"], [101, "NJ"], [105, "CA"]], \
columns=["Col1", "Col2"])
выглядит следующим образом,
Col1 Col2
0 101 NJ
1 105 CA
2 111 MO
3 101 NJ
4 112 NB
5 101 NJ
6 105 CA
СейчасЯ пытаюсь перебрать список значений (которые являются ключами моего new_dict
) и сопоставить их с Col1
, и если они совпадают, я хотел бы извлечь значения Col2
в качестве значений моего словаря.Вот так у меня пока есть мой код,
new_dict = {}
for value in sample_list:
for i in sample_df['Col1']:
if value == i:
new_dict[value] = [i for i in sample_df['Col2']]
Однако мой new_dict
выглядит следующим образом,
{101: ['NJ', 'CA', 'MO', 'NJ', 'NB', 'NJ', 'CA'],
105: ['NJ', 'CA', 'MO', 'NJ', 'NB', 'NJ', 'CA'],
112: ['NJ', 'CA', 'MO', 'NJ', 'NB', 'NJ', 'CA']}
Мне нужен мой вывод, как этот,
{101: ['NJ'],
105: ['CA'],
112: ['NB']}
Как мне получить желаемый результат?Любая помощь будет хорошей.