У меня есть следующие панды df:
category1 category2
A B
A C
B NaN
A NaN
И я хочу изменить значения в category2
на D
, если выполняются следующие условия:
category1 == A
category2 == NaN
Поэтому мой ожидаемый результат будет:
category1 category2
A B
A C
B NaN
A D
Я пробовал два способа:
df.loc[((df.category1 == "A") & (df.category2 == 'nan')), "category2"] = "D" # doesn't change anything
и
import numpy as np
df['category2'] = np.where(((df['category1'] == 'A') & (df['category2'] == "")), "D")
# ValueError: either both or neither of x and y should be given
Почему не работает ни одна из строк?