Предположим, у меня есть df:
A | B |
aa| 11|
aa| 12|
aa| 13|
ab| 11|
ac| 11|
ab| 12|
ad| 11|
ae| 11|
Я пытаюсь создать третий столбец и заполнить его в зависимости от следующих условий:
ЕСЛИ элемент в A имеет значение 12 ИЛИ 13 - write 'да, в столбце C. Else-write no.
Итак, я создал пустой столбец C и получил уникальные значения A. И использовал цикл for для заполнения столбца данных, но я постоянно получаю сообщение об ошибке.
df['C'] =''
uni = df['A'].unique()
for a in uni:
vals=['12', '13']
df['C'] = np.where(df[df['A']==a]['B'].isin(vals), 'YES', 'NO')
Я также пытался использовать другой цикл for
for a in uni:
if ('12' in df[df['A']==a]['B'].values) | ('13' in df[df['A']==a]['B'].values):
df["C"]='YES'
else:
df["C"]='NO'
Но в этом случае весьстолбец заполнен только значениями NO.
Куда я повернул не так?