python - 以下代码中的错误是什么?如何解决错误
问题描述
import numpy as np
import pandas as pd
dataset=pd.read_csv('iris.csv')
dataset.shape
dataset.head(10)
feature_column = ['sepal_length','sepal_width','petal_length','petal_width']
x=dataset[feature_column].values
=dataset['species'].values
dataset[feature_column].values
dataset['species'].values
from sklearn.preprocessing import LabelEncoder
le=LabelEncoder()
y=le.fit_transform(y)
y[:10]
from sklearn.model_selection import train_test_split
X_train, y_train,X_test, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-1-65776283812c> in <module>
1 from sklearn.model_selection import train_test_split
----> 2 X_train, y_train,X_test, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
NameError: name 'X' is not defined
解决方案
错误非常具体......它来自这一行:
X_train, y_train,X_test, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
您将X
(大写)作为第一个参数传递给train_test_split()
函数,但之前未定义。我相信你的意思是通过x
(小写)。
PS:请注意,根据PEP8,大写名称只能用于常量:PEP8 constants