Ошибка в делении ряда 2 панд на десятичные значения (ежедневная цена акций)
Я пытаюсь разделить 2 панды столбцов (тот же столбец, разделенный путем сдвига одной ячейки), но получаю ошибку, как показано ниже...
.. Это удивительно, так как я делал такие вычисления много раз прежде для данных временных рядов и никогда не сталкивался с этой проблемой.
Может кто-нибудь подсказать, что здесь происходит?... Я рассчитываю ежедневную доходность цены Adj Close на акцию, поэтому мне нужен ответ в десятичном виде.
1 ответ
Решение
Я думаю, что вам нужно преобразовать в float
первый столбец, потому что dtype
является object
что очевидно string
:
z = x.astype(float) / y.astype(float)
Или же:
data['Adj Close'] = data['Adj Close'].astype(float)
z = data['Adj Close'].shift(-1) / data['Adj Close']