泰坦尼特生存数据集python分析代码
时间: 2024-09-19 16:17:27 浏览: 67
泰坦尼克号生存数据集是一个经典的数据科学入门案例,通常用于机器学习中的预测任务,比如预测乘客是否能够在泰坦尼克号沉船事故中幸存下来。Python中有许多库可以帮助我们处理这个数据集,如pandas用于数据读取和清洗,matplotlib和seaborn用于数据可视化,sklearn用于模型训练和评估。
下面是一个简单的Python代码示例,展示了如何加载数据、预处理数据并使用决策树分类器进行分析:
```python
# 导入所需库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
# 加载数据
url = "https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv"
data = pd.read_csv(url)
# 数据预处理
data['Sex'] = data['Sex'].map({'male': 0, 'female': 1}) # 将性别转换为数字
data.drop(['Name', 'Ticket', 'Cabin'], axis=1, inplace=True) # 可选:删除某些非数值特征
data['Age'].fillna(data['Age'].mean(), inplace=True) # 填充缺失的年龄值
data['Embarked'].fillna(data['Embarked'].mode()[0], inplace=True) # 填充缺失的登船港口
# 定义特征和目标变量
features = ['Pclass', 'Sex', 'Age', 'SibSp', 'Parch', 'Fare']
X = data[features]
y = data['Survived']
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 训练决策树模型
model = DecisionTreeClassifier()
model.fit(X_train, y_train)
# 预测和评估
predictions = model.predict(X_test)
accuracy = accuracy_score(y_test, predictions)
print(f"Accuracy: {accuracy * 100}%")
# 可视化决策树(使用如Graphviz等库)
# tree.export_graphviz(model, out_file='tree.dot') # 这部分依赖于特定的可视化工具
```
阅读全文