我正在尝试使用从 csv 读取到 pandas 数据帧的数据来设置
test_train_split
。我正在读的书说我应该分为 x_train
作为数据和 y_train
作为目标,但是如何定义哪一列是目标,哪一列是数据?到目前为止我有以下
import pandas as pd
from sklearn.model_selection import train_test_split
Data = pd.read_csv("Data.csv")
我已经阅读了按以下方式进行分割,但是以下使用了一堆已经定义了
data
和 target
的内容:
X_train, X_test, y_train, y_test = train_test_split(businessleisure_data['data'],
iris_dataset['target'], random_state=0)
你可以这样做:
Data = pd.read_csv("Data.csv")
X = Data.drop(['name of the target column'],axis=1).values
y = Data['name of the target column'].values
X_train,X_test,y_train,y_test = train_test_split(X,y,random_state=0)
在大多数情况下,目标变量是数据集的最后一列,因此您也可以尝试以下操作:
Data = pd.read_csv("Data.csv")
X = Data.iloc[:,:-1]
y = Data.iloc[:,-1]
X_train,X_test,y_train,y_test = train_test_split(X,y,random_state=0)
我搜索了我的问题,这个问题出现在搜索结果中。 然后我看了rrrrttt的评论 并发现它很有用。但需要一些改变。
X = data.drop(['Outcome'],axis=1).values
y = data['Outcome'].values
X_train ,X_test, y_train, y_test = train_test_split(X,y,test_size=0.2)
上面提到的是对我有用的代码,它在 80% 的数据上训练模型并在 20% 的数据上测试它。