import numpy as np
import pandas as pd
import matplotlib.pyplot as pt
data1 = pd.read_csv('stage1_labels.csv')
X = data1.iloc[:, :-1].values
y = data1.iloc[:, 1].values
from sklearn.preprocessing import LabelEncoder, OneHotEncoder
label_X = LabelEncoder()
X[:,0] = label_X.fit_transform(X[:,0])
encoder = OneHotEncoder(categorical_features = [0])
X = encoder.fit_transform(X).toarray()
from sklearn.cross_validation import train_test_split
X_train, X_test, y_train,y_test = train_test_split(X, y, test_size = 0.4, random_state = 0)
#fitting Simple Regression to training set
from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor.fit(X_train, y_train)
#predecting the test set results
y_pred = regressor.predict(X_test)
#Visualization of the training set results
pt.scatter(X_train, y_train, color = 'red')
pt.plot(X_train, regressor.predict(X_train), color = 'green')
pt.title('salary vs yearExp (Training set)')
pt.xlabel('years of experience')
pt.ylabel('salary')
pt.show()
Мне нужна помощь в понимании ошибки при выполнении вышеуказанного кода. Ниже ошибка:ValueError: x и y должны быть одинакового размера
«поднять ValueError (» х и у должны быть одинакового размера «)»
Я .csv файл с 1398 строками и 2 столбца. Я взял 40%, как указано в y_test, как видно из приведенного выше кода.
Пожалуйста, помогите
С уважением, Amitesh
Я наткнулся на ссылку из стека, которая говорила об ошибке, но сценарий отличается от моего. Ссылка на ссылку http://stackoverflow.com/questions/24569729/valueerror-x- and-y-must-be-the-same-size-python – user3521180
Проведение полной проверки стека ошибок поможет. –
Ниже приводится полная ошибка, что я мог видеть в моем IDE Файл "C: \ Program Files \ Anaconda2 \ Lib \ сайт-пакеты \ Matplotlib \ pyplot.py", линия 3258, в разбросе edgecolors = edgecolors, данных = данные, ** kwargs) Файл «C: \ Program Files \ Anaconda2 \ lib \ site-packages \ matplotlib \ __ init__.py», строка 1818, внутри return func (ax, * args, ** kwargs) Файл "C: \ Program Files \ Anaconda2 \ Lib \ сайт-пакеты \ Matplotlib \ оси \ _axes.py", линии 3810, в разбросе поднять ValueError ("х и у должны быть одинакового размера") ValueError : x и y должны быть одного размера – user3521180