Мне нужна помощь.
У меня есть фрейм данных со столбцом int.Я хочу проверить эти значения.
test1 = (data['CC'].shift(1) > 50) & (data['CC'] < 50)
test2 = (data['CC'].shift(1) < -50) & (data['CC'] > -50)
Этот код работает и возвращает серию из 2000 строк.У меня нет проблем с этим.
0 False
1 False
2 False
3 False
4 False
Name: CCI, dtype: bool
Я хочу использовать эту серию для добавления нового столбца.
if(test1):
data['Sloop'] = '+S'
elif(test2):
data['Sloop'] = '-S'
else:
data['Sloop'] = 'N'
Оператор if не работает:
ValueError: Значение истинности Серии неоднозначно.Используйте a.empty, a.bool (), a.item (), a.any () или a.all ().
Конечно, здесь есть test1 и test2.Реальный код:
if((data['CC'].shift(1) > 50) & (data['CC'] < 50)):
data['Sloop'] = '+S'
elif((data['CC'].shift(1) < -50) & (data['CC'] > -50)):
data['Sloop'] = '-S'
else:
data['Sloop'] = 'N'
Та же ошибка.Пожалуйста, помогите.
Спасибо