Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ValueError:找到具有0个功能(形状=(546,0))的数组,但至少需要1个_Python_Pandas_Numpy_Scikit Learn - Fatal编程技术网

Python ValueError:找到具有0个功能(形状=(546,0))的数组,但至少需要1个

Python ValueError:找到具有0个功能(形状=(546,0))的数组,但至少需要1个,python,pandas,numpy,scikit-learn,Python,Pandas,Numpy,Scikit Learn,我只是尝试进行数据预处理,经常会遇到这样的错误。有人能解释一下给定数据集的这段特定代码中的错误吗 提前谢谢 # STEP 1: IMPORTING THE LIBARIES import numpy as np import pandas as pd # STEP 2: IMPORTING THE DATASET dataset = pd.read_csv("https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/datase

我只是尝试进行数据预处理,经常会遇到这样的错误。有人能解释一下给定数据集的这段特定代码中的错误吗

提前谢谢

# STEP 1: IMPORTING THE LIBARIES

import numpy as np
import pandas as pd

# STEP 2: IMPORTING THE DATASET
dataset = pd.read_csv("https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/datasets/Data.csv", error_bad_lines=False)

X = dataset.iloc[:,:-1].values  
Y = dataset.iloc[:,1:3].values

# STEP 3: HANDLING THE MISSING VALUES
from sklearn.preprocessing import Imputer

imputer = Imputer(missing_values = "NaN",strategy = "mean",axis = 0)
imputer = imputer.fit(X[ : , 1:3])
X[:,1:3] = imputer.transform(X[:,1:3]) 

# STEP 4: ENCODING CATEGPRICAL DATA
from sklearn.preprocessing import LaberEncoder,OneHotEncoder
labelencoder_X = LabelEncoder()  # Encode labels with value between 0 and n_classes-1.
X[ : , 0] = labelencoder_X.fit_transform(X[ : , 0]) # All the rows and first columns

onehotencoder = OneHotEncoder(categorical_features = [0])
X = onehotencoder.fit_transform(X).toarray()

labelencoder_Y = LabelEncoder()
Y =  labelencoder_Y.fit_transform(Y)

# Step 5: Splitting the datasets into training sets and Test sets

from sklearn.cross_validation import train_test_split
X_train, X_test, Y_train, Y_test = train_test_split( X , Y , test_size = 0.2, random_state = 0)

# Step 6: Feature Scaling
from sklearn.preprocessing import StandardScaler
sc_X = StandardScaler()
X_train = sc_X.fit_transform(X_train)
X_test = sc_X.fit_transform(X_test)
返回错误:

ValueError: Found array with 0 feature(s) (shape=(546, 0)) while a minimum of 1 is required.
你在这行的链接

dataset = pd.read_csv("https://github.com/Avik-Jain/100-Days-Of-ML-Code/blob/master/datasets/Data.csv", error_bad_lines=False)
这是错误的

当前链接返回github上显示此csv的网页,但不返回实际的csv数据。因此,
数据集中存在的任何数据都是无效的

改为:

dataset = pd.read_csv("https://raw.githubusercontent.com/Avik-Jain/100-Days-Of-ML-Code/master/datasets/Data.csv", error_bad_lines=False)
除此之外,
LabelEncoder
import中还有一个拼写错误

现在,即使你纠正了这些,仍然会有错误,因为

Y =  labelencoder_Y.fit_transform(Y)
LabelEncoder只接受一个单列数组作为输入,但由于

Y = dataset.iloc[:,1:3].values

请更清楚地解释你想做什么。

你能
print()
你的
x
y
变量吗?维度可能不匹配。您也可以发布完整的堆栈跟踪吗?谢谢!我试过了,结果成功了。事实上,我只是一个机器学习的新手,我开始了100天的ml代码。第一个是数据预处理,我被困在那里,但在你的建议后,错误被解决了@由于答案解决了您的问题,请接受它(参见)