python pandas csv getitem,访问.csv文件时使用Pandas获取KeyError

出于某种原因,在查看我拥有的.csv股票数据时,大熊猫会抛出错误 . 这是错误:

Traceback(最近一次调用最后一次):文件“/usr/local/lib/python3.7/site-packages/pandas/core/indexes/base.py”,第3078行,在get_loc中返回self._engine.get_loc(key )文件“pandas / _libs / index.pyx”,第140行,在pandas._libs.index.IndexEngine.get_loc文件“pandas / _libs / index.pyx”,第162行,在pandas._libs.index.IndexEngine.get_loc文件中pandas._libs.hashtable.PyObjectHashTable.get_item中的“pandas / _libs / hashtable_class_helper.pxi”,第1492行,文件“pandas / _libs / hashtable_class_helper.pxi”,第1500行,pandas.libs.hashtable.PyObjectHashTable.get_item KeyError:' Date'在处理上述异常期间,发生了另一个异常:Traceback(最近一次调用last):文件“./python-for-finance-7.py”,第75行,在compile_data()文件“./python-for -finance-7.py“,第59行,在compile_data df.set_index('Date',inplace = True)文件”/usr/local/lib/python3.7/site-packages/pandas/core/frame.py“ ,> 3909行,在set_index level = frame [col] . values文件“/usr/local/lib/python3.7/site-packages/pan das / core / frame.py“,>第2688行,在getitem中返回self._getitem_column(key)文件”/usr/local/lib/python3.7/site-packages/pandas/core/frame.py“,> line 2695,在_getitem_column中返回self._get_item_cache(key)文件“/usr/local/lib/python3.7/site-packages/pandas/core/generic.py”,第2489行,在_get_item_cache values = self._data.get( item)文件“/usr/local/lib/python3.7/site->packages/pandas/core/internals.py”,第4115行,在get loc = self.items.get_loc(item)文件“/ usr / local /lib/python3.7/site-packages/pandas/core/indexes/base.py“,第3080行,在get_loc中> return self._engine.get_loc(self._maybe_cast_indexer(key))文件”pandas / _libs / index . pyx“,第140行,在pandas._libs.index.IndexEngine.get_loc文件”pandas / _libs / index.pyx“,第162行,在pandas._libs.index.IndexEngine.get_loc文件”pandas / _libs / hashtable_class_helper.pxi“ ,行1492,在pandas._libs.hashtable.PyObjectHashTable.get_item文件“pandas / _libs / hashtable_class_helper.pxi”,第1500行,在pandas._libs.hashtable.PyObjectHashTable.ge中t_item KeyError:'Date'

这段代码:

import bs4 as bs

import datetime as dt

import os

import pandas as pd

import pandas_datareader.data as web

import pickle

import requests

def compile_data():

with open("sp500tickers.pickle","rb") as f:

tickers = pickle.load(f)

main_df = pd.DataFrame()

for count,ticker in enumerate(tickers):

df = pd.read_csv('stock_dfs/{}.csv'.format(ticker),

delimiter=',', encoding="utf-8-sig")

df.set_index('Date', inplace=True)

df.rename(columns = {'Adj Close':ticker}, inplace=True)

df.drop(['High','Low','Open','Close','Volume'], 1, inplace=True)

if main_df.empty:

main_df = df

else:

main_df = main_df.join(df, how='outer')

print(count)

print(main_df.head())

main_df.to_csv('sp500_joined_closes.csv')

compile_data()

CSV文件中的数据排列如下:

Date High Low Open Close Volume Adj. Close

yyyy-mm-dd $$ $$ $$ $$ $$ $$

我尝试更改Date的大小(即将Date更改为date),但它只是继续抛出另一个

KeyError:在轴上找不到“['高','低','打开','关闭','音量'”

有人可以帮忙吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值