Python-NaN返回(pandas-resample函数)

Python-NaN返回(pandas-resample函数),python,pandas,nan,Python,Pandas,Nan,我正在做一项基于下面youtube链接的财务研究,我想了解为什么我得到的是NaN回报而不是预期的计算结果。我需要在这个脚本中做什么才能达到预期的值 YouTube案例: 返回: Ativo ABEV3 NaN CEAB3 NaN ENBR3 NaN FLRY3 NaN IRBR3 NaN ITSA4 NaN JHSF3 NaN STBP3 NaN dtype: float64 您需要将“起始日期”更改为具有一年以上的数据 当前脚本返回一行,而一行数据上的.pct

我正在做一项基于下面youtube链接的财务研究,我想了解为什么我得到的是NaN回报而不是预期的计算结果。我需要在这个脚本中做什么才能达到预期的值

YouTube案例:

返回:

Ativo
ABEV3   NaN
CEAB3   NaN
ENBR3   NaN
FLRY3   NaN
IRBR3   NaN
ITSA4   NaN
JHSF3   NaN
STBP3   NaN
dtype: float64

您需要将“起始日期”更改为具有一年以上的数据

当前脚本返回一行,而一行数据上的.pct_change()返回NaN,因为没有上一行可供比较

当我从_日期更改为'2018年1月1日'

import investpy as env
import numpy as np
import pandas as pd

lt = ['ABEV3','CEAB3','ENBR3','FLRY3','IRBR3','ITSA4','JHSF3','STBP3']
prices = pd.DataFrame()
for i in lt:
    df = env.get_stock_historical_data(stock=i, from_date='01/01/2018', to_date='29/05/2020',  country='brazil')
    df['Ativo'] = i
    prices = pd.concat([prices, df], sort=True)

pivoted = prices.pivot(columns='Ativo', values='Close')

e_r = pivoted.resample('Y').last().pct_change().mean()
e_r
我得到以下输出:

Ativo
ABEV3   -0.043025
CEAB3   -0.464669
ENBR3    0.180655
FLRY3    0.191976
IRBR3   -0.175084
ITSA4   -0.035767
JHSF3    1.283291
STBP3    0.223627
dtype: float64

你所有的股票都有年度数据吗?
Ativo
ABEV3   -0.043025
CEAB3   -0.464669
ENBR3    0.180655
FLRY3    0.191976
IRBR3   -0.175084
ITSA4   -0.035767
JHSF3    1.283291
STBP3    0.223627
dtype: float64