执行Chi-Squared卡方特征选择时数据集加载报错如何解决?
卡方特征选择代码报错解决方案
报错根因
当前报错核心是函数定义和调用逻辑不匹配,同时存在隐藏的数据集读取配置错误:
- 你定义的
load_dataset()没有声明接收任何入参,但实际调用时传入了文件名参数'GDS-and-MMSE-balanced.csv',参数数量不匹配触发类型错误 - 你提到数据集表头位于第1行,但代码中
read_csv指定了header=None,会把表头行当成普通数据处理,同时函数内硬编码的文件名缺少.csv后缀,即使参数问题修复后也会找不到文件
修复方案
只需修改load_dataset函数的定义部分即可,修改后的代码如下:
# load the dataset def load_dataset(filename): # 新增filename入参接收外部传入的文件路径 # load the dataset as a pandas DataFrame # header=0表示用文件的第0行(即你所说的第1行)作为表头 data = read_csv(filename, header=0) # retrieve numpy array dataset = data.values # split into input (X) and output (y) variables X = dataset[:, :-1] y = dataset[:,-1] # format all fields as string X = X.astype(str) return X, y
修改完成后重新运行代码即可解决当前报错。
可选优化提示
如果后续运行出现编码类报错,可以在read_csv中增加encoding参数适配你的文件编码,比如encoding='utf-8'或encoding='gbk'。
内容的提问来源于stack exchange,提问作者Najiha Ramlan
相关产品推荐
相关产品推荐

