我是数据分析和机器学习的新手,我有以下问题。我有以下数据集,我想使用算法K最近邻使用pandas和sklearn进行分析:
https://archive.ics.uci.edu/ml/datasets/Credit+Approval
首先,我将数据集加载到数据框中,每个列都包含标题(A1
到A16
):
df = pd.read_csv('crx.csv').dropna().reset_index(drop = True)
我的问题是,如何使用train_test_split
功能:
a)在测试中拆分数据并训练和
b)同时将列A1
标记为A15
作为标记,将A16
标记为标记?
我希望有类似下面的代码,当然这不符合我的意愿:
X_train, X_test, y_train, y_test = train_test_split(df[0:16], df['A16'], random_state=0)
其中X_train
将75%的数据从A1
列添加到A15
,X_test
其余25%,y_train
相同的75%的数据但只有列A16
(目标)和y_test
其余25%。
我的意图是稍后将KNeighborsClassifier.fit
与训练数据一起使用。
提前谢谢你,
答案 0 :(得分:1)
改为使用df.iloc[:,0:16]
(或df[['A1', 'A2', 'A3', ...]]
,但在您的情况下更麻烦):
train_test_tuple = train_test_split(df.iloc[:,0:16], df['A16'], random_state=0)