重要得放前面
Python 数据分析与机器学习实战:从数据到洞察的完整路径
Python数据分析与机器学习实战:从数据到洞察的完整路径
在数字化浪潮席卷全球的今天,数据分析与机器学习已成为解锁数据价值的核心技术。Python凭借其简洁语法和丰富的生态库,成为数据科学领域的首选工具。本文将通过实战案例,带您掌握Python在数据分析与机器学习中的核心应用,助力您快速从数据处理迈向模型构建。
一、数据分析基础:夯实数据处理根基
1.1 多格式数据读取
pandas
库提供了统一的数据读取接口。无论是CSV文件:
import pandas as pd
data = pd.read_csv('data.csv')
还是Excel文件:
excel_data = pd.read_excel('data.xlsx')
都能轻松实现数据加载,为后续分析做好准备。
1.2 数据清洗实战
真实数据往往存在缺失值、重复值等问题。使用fillna()
填充缺失值:
data.fillna(data.mean(), inplace=True)
通过drop_duplicates()
去除重复记录:
data.drop_duplicates(inplace=True)
确保数据质量达到分析要求。
二、数据分析进阶:挖掘数据隐藏价值
2.1 探索性数据分析(EDA)
利用describe()
获取数据统计摘要:
print(data.describe())
结合matplotlib
和seaborn
实现可视化:
import matplotlib.pyplot as plt
import seaborn as sns
# 绘制箱线图
plt.boxplot(data['数值列'])
plt.show()
# 绘制相关性热力图
corr = data.corr()
sns.heatmap(corr, annot=True)
plt.show()
直观展现数据分布和特征关系。
2.2 数据分组聚合
通过groupby()
实现分组统计:
grouped = data.groupby('分类列')
print(grouped.mean())
快速分析不同类别数据的特征差异。
三、机器学习实战:构建智能预测模型
3.1 特征工程实践
对于文本数据,使用CountVectorizer
进行特征提取:
from sklearn.feature_extraction.text import CountVectorizer
text_data = ['示例文本1', '示例文本2']
vectorizer = CountVectorizer()
features = vectorizer.fit_transform(text_data)
利用SelectKBest
进行特征选择:
from sklearn.feature_selection import SelectKBest, f_classif
selector = SelectKBest(score_func=f_classif, k=5)
X_new = selector.fit_transform(X, y)
提升模型性能。
3.2 模型训练与评估
以逻辑回归为例,构建分类模型:
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
model = LogisticRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"准确率: {accuracy}")
3.3 模型优化技巧
通过网格搜索进行超参数调优:
from sklearn.model_selection import GridSearchCV
param_grid = {'C': [0.1, 1, 10], 'penalty': ['l1', 'l2']}
grid_search = GridSearchCV(LogisticRegression(), param_grid, cv=5)
grid_search.fit(X_train, y_train)
print("最优参数:", grid_search.best_params_)
提升模型泛化能力。