У меня есть следующий набор данных:
Я пытаюсь сказать пандам, что:
Если номер отчета ниже30, ему нужно создать новую переменную, равную
df_bei_index [col] * 0,05 + df_bei_index ['PDI_Average'] * 0,95.
Если отчет №больше или равно 30, ему нужно создать новую переменную, равную
df_bei_index [col]
Я написал следующий код:
for col in col_list:
if df_bei_index['Report No'] <= 29:
df_bei_index[col+'_final'] = df_bei_index[col]*0.05 + df_bei_index['PDI_Average']*0.95
else:
df_bei_index[col+'_final'] = df_bei_index[col]
Но я получаю эту ошибку
ValueError Traceback (последний последний вызов) в () 10 11 для col в col_list: ---> 12 if df_bei_index ['Отчет № '] <= 29: 13 df_bei_index [col +' _ final '] = df_bei_index [col] * 0,05 + df_bei_index [' PDI_Average '] * 0,95 14 еще: </p>
~ \ Anaconda3 \ lib \ site-packages\ pandas \ core \ generic.py в ненулевое (self) 1574 повысить ValueError («Значение истинности {0} неоднозначно.» 1575 »Используйте a.empty, a.bool (), a.item (), a.any () или a.all (). "-> 1576 .format (self. класс . имя )) 1577 1578 bool = ненулевой
ValueError: Значение истинности сериинеоднозначно.Используйте a.empty, a.bool (), a.item (), a.any () или a.all ().