使用SVR进行薪资预测
时间: 2023-07-11 10:25:46 浏览: 94
SVR 可以用于回归问题,因此可以使用它来进行薪资预测。下面是一个简单的 Python 代码示例:
```python
import pandas as pd
from sklearn.svm import SVR
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
# 读取数据
data = pd.read_csv('salary.csv')
# 将数据拆分为特征和目标变量
X = data.drop('salary', axis=1)
y = data['salary']
# 对特征数据进行标准化
scaler = StandardScaler()
X = scaler.fit_transform(X)
# 将数据拆分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
# 创建 SVR 模型并拟合数据
svr_model = SVR(kernel='rbf', C=1e3, gamma=0.1)
svr_model.fit(X_train, y_train)
# 评估模型性能
score = svr_model.score(X_test, y_test)
print(f'R^2 score: {score:.2f}')
# 预测新的数据点
new_data = [[5, 2000, 1], [10, 5000, 0]]
new_data = scaler.transform(new_data)
predicted_salary = svr_model.predict(new_data)
# 输出预测结果
print(f'Predicted salaries: {predicted_salary}')
```
此代码使用一个名为 `salary.csv` 的数据集,其中包含了员工的特征(工作年限、每月工作小时数和是否拥有学位)以及对应的薪资。首先对数据进行标准化,然后将数据拆分为训练集和测试集。接下来使用 SVR 模型拟合训练数据,并使用测试数据评估模型性能。最后,使用模型预测新的数据点的输出,其中包含了两个员工的特征数据。
阅读全文