1.收集了某校学生的就业数据,与就业相关的特征如下: 根据样本数据,划分训练集与测试集(train_test_split函数)
时间: 2024-03-18 07:42:36 浏览: 120
好的,根据你提供的信息,我可以给出以下代码示例:
```
import pandas as pd
from sklearn.model_selection import train_test_split
# 读取数据并进行预处理
df = pd.read_csv('data.csv')
X = df.drop('就业情况', axis=1)
y = df['就业情况']
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
其中,`data.csv`是包含学生就业数据的CSV文件,`X`是特征矩阵,`y`是标签向量,`test_size`参数指定测试集所占的比例,`random_state`参数是为了确保每次划分的结果都是一样的。划分后,`X_train`和`y_train`是训练集特征矩阵和标签向量,`X_test`和`y_test`是测试集特征矩阵和标签向量。
相关问题
题目2 大学生就业数据预测 1.收集了某校学生的就业数据,与就业相关的特征如下: 根据样本数据,划分训练集与测试集(train_test_split函数)(30分) 2.采用KNN建立分类模型,分析模型的准确率。(30分) from sklearn import neighbors knn = neighbors.KNeighborsClassifier() knn.fit(X_train, y_train) y_pred_knn = knn.predict(X_test) 3.采用DecisionTreeClassifier决策树模型建模,比较各因素的重要性(feature_importances_),并分析模型的准确率。(40分) from sklearn import tree dtc = tree.DecisionTreeClassifier() dtc.fit(X_train, y_train) y_pred_dtc = dtc.predict(X_test)
好的,我已经理解了你的问题。下面是我的回答:
1. 划分训练集与测试集的代码如下:
```
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
```
其中,X表示特征矩阵,y表示目标向量,test_size表示测试集所占比例,random_state表示随机种子,保证每次划分的结果一致。
2. 采用KNN算法建立分类模型,并分析准确率的代码如下:
```
from sklearn.metrics import accuracy_score
knn = neighbors.KNeighborsClassifier()
knn.fit(X_train, y_train)
y_pred_knn = knn.predict(X_test)
accuracy_knn = accuracy_score(y_test, y_pred_knn)
print("KNN准确率:", accuracy_knn)
```
其中,accuracy_score函数用于计算准确率。
3. 采用DecisionTreeClassifier决策树模型建模,并分析各因素的重要性和准确率的代码如下:
```
dtc = tree.DecisionTreeClassifier()
dtc.fit(X_train, y_train)
y_pred_dtc = dtc.predict(X_test)
accuracy_dtc = accuracy_score(y_test, y_pred_dtc)
print("决策树准确率:", accuracy_dtc)
importance = dtc.feature_importances_
print("各因素重要性:", importance)
```
其中,feature_importances_属性表示各因素的重要性。
阅读全文