Я пытаюсь установить значение столбца панд на основе другого значения столбцов.Новое значение должно быть установлено путем перебора списка, который имеет ту же длину, что и уникальные значения col1
Пример:
d = {'col1': [1, 2,2,2,3,3,4], 'col2': [1,1,1,1,1,1,1]}
df = pd.DataFrame(data=d)
items_to_add=[5,2,11,9]
#list has length of unique values in `column1`
Теперь я хочу добавить, например, 5в column2
, если column1
равно 1 и 2 для всех column2
строк, где column1
равно 2 .... Так что я должен получить:
col1 col2
1 5
2 2
2 2
2 2
3 11
3 11
4 9
Этот код вызывает синтаксическую ошибку, ноя не знаю почему
items_to_add=[5,2,11,9]
for i in range(len(items_to_add)):
df['col2'][df.col1[i]] = items_to_add[i]
Что я делаю не так?Как я могу это исправить?