首页 文章

我想用包含pd.date_range的变量切片我的pandas数据框,但它为我的数据返回Nan

提问于
浏览
0

我已经从雅虎财务加载数据,包括 Headers 日期,开放,高,低,收盘,交易量,收盘价 . 日期是我的数据框索引,我希望能够使用索引(日期)对此数据进行排序 .

变量month将给出我需要的日期数组,并将打印出来 . 问题是我得到了我的数据的Nan值 .

from pandas_datareader import data as dreader
import pandas as pd

df = pd.read_csv("cde_data.csv",index_col='Date')
month = pd.date_range('2010-08-01','2016-08-01',freq='m')

print(df.ix[month.values])

这是我得到的输出(我只发布前4行以节省空间)

Open  High  Low  Close  Volume  Adj Close
Date
2010-08-31   NaN   NaN  NaN    NaN     NaN        NaN

2010-09-30   NaN   NaN  NaN    NaN     NaN        NaN

2010-10-31   NaN   NaN  NaN    NaN     NaN        NaN

2010-11-30   NaN   NaN  NaN    NaN     NaN        NaN

这是df.head()

Open    High     Low   Close  Volume   Adj Close
Date
1990-04-12  26.875  26.875  26.625  26.625    6100  250.576036
1990-04-16  26.500  26.750  26.375  26.750     500  251.752449
1990-04-17  26.750  26.875  26.750  26.875    2300  252.928863
1990-04-18  26.875  26.875  26.500  26.625    3500  250.576036
1990-04-19  26.500  26.750  26.500  26.750     700  251.752449

按任意键继续 . . .

1 回答

  • 0

    您的索引不是datetime类型而是object . 在使用之前转换它:

    df = df.reset_index()
    df.Date = pd.to_datetime(df.Date)
    df = df.set_index('Date')
    

相关问题