Я столкнулся с множеством вопросов в переполнении стека, но до сих пор не могу понять это. Я понимаю, что он возвращает Bool и т. Д., Но в основном я хочу применить несколько условных выражений к DataFrame (If And Else, Else if ...) Но продолжайте получать неоднозначную ошибку, прося вас использовать any(), all()Больше значения правды неоднозначно
Вот код:
if (stratData['Ratio'].shift(1) < 1) & (stratData['60'].shift(1) < stratData['Ratio'].shift(1)):
stratData['pos'] = -1
else:
stratData['pos'] = 1
Я бы хотел, чтобы это сработало, а также добавьте дополнительные условия в столбец stratData ['pos']. Я попытался создать myfunc = lambda ... и я также попробовал np.where. Цените любую помощь!
EDIT: Я отправил раньше, но я хотел бы сделать несколько условий для того, помимо всего ИСТИНА ЛОЖЬ с помощью [IDX]
if (stratData['Ratio'].shift(1) < 1) & (stratData['60'].shift(1) < stratData['Ratio'].shift(1)):
stratData['pos'] = -1
elif (stratData['Ratio'].shift(1) > 1) & (stratData['60'].shift(1) > stratData['Ratio'].shift(1)):
stratData['pos'] = 1
else:
stratData['pos'] = 0
Пожалуйста, укажите точную формулировку своего сообщения об ошибке в своем вопросе. –
Btw, не [тег: неоднозначный] выглядит двусмысленным и избыточным? – vaultah
Является ли 'stratData ['pos']' скаляром (1 значение) или многими? – hpaulj