项目错误的长度 1 而不是 50 Pandas

问题描述

我正在处理一个包含 2 列和 51 行的 csv 文件。

data = pd.read_csv("data.csv",sep = ',')
data.columns=['x_column','y_column']

然后我进行线性回归

X = data.iloc[:,0].values.reshape(-1,1)
y = data.iloc[:,1].values.reshape(-1,1)
lr = LinearRegression()

接下来我需要执行的是 Tukey 方法。

X = data.iloc[[0],:].values
y = data.iloc[[1],:].values

然后我绘制了这些框,发现我的范围在 -40 到 10 之间。

data.boxplot(return_type='dict')
plt.plot()

我需要为我的异常值分配一个值,以便在再次训练我的数据集之前删除它们。这就是我遇到问题的地方。

y_column = X[:,1]
data_outliers = (y_column > 0.0)
data[data_outliers]

当我运行最后一部分时,我得到项目错误的长度为 1 而不是 50。 错误,我不知道如何解决。任何帮助表示赞赏。

解决方法

试试:

data_outliers = (y_column > 0.0).ravel()

问题是你的 data_outliers 是一个二维的 numpy 列(形状:(1,50)),不可能像那样掩盖 df ...... ravel 只是将它压平......

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...