Python Ошибка: объект Timestamp нельзя интерпретировать как целое число - PullRequest
0 голосов
/ 28 апреля 2020

Я пытаюсь написать вложенное значение для l oop, чтобы рассчитать месячную волатильность по дневным доходам, формула выглядит следующим образом: формула

Мой набор данных выглядит следующим образом: набор данных Дата - это тип данных метки времени; следовательно, для l oop не будет работать так, как я хочу. Моя идея вложенного l oop состоит в том, чтобы разложить переменные date в столбцы year, month и day; затем напишите еще один l oop, чтобы выполнить суммирование в формуле. Может ли кто-нибудь сказать мне правильный способ сделать это или какие-либо сложные решения? Я ценю любые решения! Большое спасибо!

Мой код, как показано ниже:

stock_price_lp = reader.get_data_yahoo(symbols = 'JPM', start = datetime(1999,1,1), 
                                       end = datetime(2019,12,31))

price = stock_price_lp.drop(columns = ['High', 'Low', 'Open','Close', 'Volume'])

price['Daily Return'] = np.log(price['Adj Close']/price['Adj Close'].shift(1))
price.reset_index(inplace=True)

start = price['Date'][1]
end = price['Date'][320] #Trying to do a small sector first

for i in range(start.year, end.year):
    for j in range(start.month, end,month):
        for k in range(start.day, end.day):
            price['Day'][k] = price['Date'][i].day
            print(price['Day'][k])
...