python-3.x - AttributeError:“NoneType”对象没有属性“asfreq”
问题描述
我正在做一个小项目,试图在 jupyter notebook 上使用 python 制作股票价格预测神经网络。我有我需要的所有导入,并且我正确导入它们而没有错误。我还确保我正确导入了 csv 文件。
这是给我错误的单元格:
a_df = get_dataframe_from_csv("DAX")
a_df = a_df.asfreq('d')
a_df.index
这是该函数的代码:
def get_dataframe_from_csv(ticker):
try:
df = pd.read_csv(PATH + ticker + '.csv', index_col='Date', parse_dates=True)
except FileNotFoundError:
pass
else:
return df
这是 csv 文件的示例。它没有标题/标题:
2013.09.05,00:00,8210.80,8257.80,8162.80,8223.50,30335
2013.09.06,00:00,8224.00,8297.00,8171.50,8251.50,33836
2013.09.09,00:00,8246.50,8315.80,8245.30,8301.00,26223
2013.09.10,00:00,8301.50,8477.80,8298.00,8467.00,30111
当我运行单元格时,我得到了我在标题中提到的错误。我试图告诉网络它获取的数据是每日数据,但是当我尝试运行单元时,我得到一个错误。
我试着把它写成a_df = a_df.asfreq(freq='d')
但是没有用。
有哪些可能的解决方案?
编辑:我认为错误是在我的 csv 文件中,我没有带有文本“日期”的索引列..如果是这种情况,我该如何添加它
解决方案
尝试修改您的功能,如下所示:
PATH = "C:\\Users\\terry\\Documents\\jupyter projects\\stock\\"
HEADERS = ['Date', 'Time', 'Open', 'High', 'Low', 'Close', 'Volume']
def get_dataframe_from_csv(ticker):
return pd.read_csv(PATH + ticker + '.csv', index_col='DateTime',
parse_dates={'DateTime': ['Date', 'Time']},
header=None, names=HEADERS)
a_df = get_dataframe_from_csv("DAX")
>>> a_df
Open High Low Close Volume
DateTime
2013-09-05 8210.8 8257.8 8162.8 8223.5 30335
2013-09-06 8224.0 8297.0 8171.5 8251.5 33836
2013-09-09 8246.5 8315.8 8245.3 8301.0 26223
2013-09-10 8301.5 8477.8 8298.0 8467.0 30111
推荐阅读
- typescript - Firebase实时数据库如何添加具有自动ID的孩子
- windows - windows上安装日晷包
- javascript - Vue JS 从方法返回数据属性到 HTML
- javascript - 如何删除浏览器自动生成的 iframe 中的 PDF 标题
- javascript - javascript中是否有一个不包含两个数字范围的随机函数?
- html - 使用 headless chrome 在 PDF 中生成命名目的地或书签
- python - 从随机到 XPath
- python - 如何获取用户选择的文件并将其提供给 Tkinter 中的 python 程序
- data-cleaning - 如何使用 OpenRefine 更好地清理极其混乱的数据?
- git - 如何将数千个本地版本添加到 GitHub?