机器学习逻辑回归案例 ——居民出行选择行为
时间: 2023-10-31 15:56:16 浏览: 60
居民出行选择行为可以被视为一个分类问题,其中特征包括年龄、性别、收入、出行目的、出行时间、出行距离等。在这里,我们可以使用逻辑回归模型进行预测。
我们可以先收集一些相关数据,然后将其分为训练集和测试集。接着,我们可以使用 Python 中的 Scikit-learn 库来构建逻辑回归模型。具体步骤如下:
1. 首先,我们需要导入所需的库:
```python
import pandas as pd
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
```
2. 然后,我们需要加载数据并进行预处理:
```python
data = pd.read_csv('travel_behavior.csv')
data = data.dropna() # 删除缺失值
data = pd.get_dummies(data, columns=['purpose', 'time']) # 将分类变量转换为哑变量
X = data.drop(['choice'], axis=1)
y = data['choice']
```
这里,我们使用了 Pandas 库加载数据,并删除了任何包含缺失值的行。然后,我们使用 `get_dummies()` 函数将分类变量转换为哑变量。最后,我们将特征(`X`)和标签(`y`)分开。
3. 接着,我们将数据分为训练集和测试集:
```python
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
```
这里,我们使用了 `train_test_split()` 函数来将数据分为训练集和测试集。我们选择了 20% 的数据作为测试集,而其余的数据则用于训练模型。
4. 然后,我们可以使用逻辑回归模型进行训练:
```python
model = LogisticRegression()
model.fit(X_train, y_train)
```
这里,我们使用了 Scikit-learn 库中的 `LogisticRegression()` 类来构建逻辑回归模型,并使用 `fit()` 方法将模型拟合到训练数据上。
5. 最后,我们可以使用测试集来评估模型的准确性:
```python
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)
```
这里,我们使用 `predict()` 方法来预测测试集中的标签,并使用 `accuracy_score()` 函数来计算模型的准确性。
通过以上步骤,我们就可以构建一个简单的逻辑回归模型,用于预测居民出行选择行为。