我在使用python指定列读取xlsx数据时遇到这个报错,具体原因不知。
这个错误通常表示你正在尝试访问一个不存在的索引或列。为了解决这个错误,你应该检查正在使用的代码并确定是否存在以下情况之一:
针对这个报错,我的解决方式主要是,尝试下重置索引。
df = df .reindex(columns=columns) #索引重置
索引重置后发现问题得以解决。
源码如下:
import pandas as pd
pd.set_option('display.max_columns', None) #显示所有列
pd.set_option('display.unicode.ambiguous_as_wide', True) #设置各列对齐
pd.set_option('display.unicode.east_asian_width', True)
pd.set_option('display.width', 180) #设置打印宽度
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #解决中文乱码
import matplotlib.colors as mcolors
src_df = pd.read_excel('./data4.xlsx', sheet_name='淘宝201805')
print('原始数据集:')
print(src_df.head(20))
columns = ['买家会员名','买家支付宝账号','买家应付货款','买家实际支付金额','订单状态','收货人姓名','收货地址','联系手机','订单创建时间','订单付款时间','宝贝标题','宝贝种类','订单备注','宝贝总数量','类别','图书编号']
src_df = src_df.reindex(columns=columns) #索引重置
print('\n选择需要读入的列:')
df = src_df[columns]
print(df.head(20))