Python Pandas: условное обновление значений столбцов на основе другого Col (объект 'int' не является подпиской) ошибка - PullRequest
0 голосов
/ 02 января 2019

У меня есть следующий пример фрейма данных. col_2 - целочисленный тип данных

col_1                 col_2
(hello, you, good)    65
(yes, are, tiles)     23

Я хочу, чтобы мой код заменил значение в col_2, если col_1 содержит определенную строку. В противном случае оставьте значение col_2 как есть.

Ниже мой код:

df['col_3'] = np.where(df['col_1'] == '(hello, you, good)', 18, df['col_2'])  

Ниже мой желаемый вывод:

col_1                 col_2
(hello, you, good)    18
(yes, are, tiles)     23

Но когда я запускаю свой код выше, я получаю следующую ошибку:

TypeError: 'int' object is not subscriptable

1 Ответ

0 голосов
/ 02 января 2019

Я думаю, что это не столбец строкового типа для col_1

np.where(df['col_1'] == ('hello', 'you', 'good'), 18, df['col_2'])  
Out[759]: array([18, 23], dtype=int64)
...