У меня есть два столбца в кадре данных pandas, и я хочу сравнить их значения друг с другом и вернуть третий столбец, обрабатывающий простую формулу.
if post_df['pos'] == 1:
if post_df['lastPrice'] < post_df['exp']:
post_df['profP'] = post_df['lastPrice'] - post_df['ltP']
post_df['pos'] = 0
else:
post_df['profP'] = post_df['lastPrice'] - post_df['ltP']
Однако, когда я запускаю приведенный выше код, я получаю следующееошибка:
if post_df['pos'] == 1:
File "/Users/srikanthiyer/Environments/emacs/lib/python3.7/site-packages/pandas/core/generic.py", line 1479, in __nonzero__
.format(self.__class__.__name__))
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
Я пытался использовать np.where, который работает, но так как я намереваюсь построить сложную условную структуру, хочу сделать ее проще, используя операторы if.