动态网站制作软件中国国家培训网正规吗
今日的示例代码包含2个部分
1. notebook文件夹内的ipynb文件,介绍下今天的思路
2. 项目文件夹中其他部分:拆分后的信贷项目,学习下如何拆分的,未来你看到的很多大项目都是类似的拆分方法
知识点回顾
1. 规范的文件命名
2. 规范的文件夹管理
3. 机器学习项目的拆分
4. 编码格式和类型注解
作业:尝试针对之前的心脏病项目ipynb,将他按照今天的示例项目整理成规范的形式,思考下哪些部分可以未来复用。
@疏锦行
import pandas as pddef load_heart_data(file_path: str) -> pd.DataFrame:"""加载心脏病数据集Args:file_path: 数据文件路径Returns:包含心脏病数据的DataFrame"""return pd.read_csv(file_path)
import pandas as pd
from sklearn.preprocessing import StandardScalerdef handle_missing_values(df: pd.DataFrame) -> pd.DataFrame:"""处理缺失值(中位数填充数值型特征)"numeric_cols = df.select_dtypes(include=['float64', 'int64']).columnsdf[numeric_cols] = df[numeric_cols].fillna(df[numeric_cols].median())return dfdef scale_features(df: pd.DataFrame) -> pd.DataFrame:"""标准化特征(可复用的数值预处理逻辑)"scaler = StandardScaler()numeric_cols = df.select_dtypes(include=['float64', 'int64']).columnsdf[numeric_cols] = scaler.fit_transform(df[numeric_cols])return df
from sklearn.ensemble import RandomForestClassifier
import joblibdef train_heart_model(X_train, y_train, model_path: str):"""训练心脏病预测模型"model = RandomForestClassifier(n_estimators=100, random_state=42)model.fit(X_train, y_train)joblib.dump(model, model_path) # 保存模型return model
import matplotlib.pyplot as plt
import seaborn as snsdef plot_correlation_heatmap(df: pd.DataFrame):"""绘制特征相关性热力图(通用可视化函数)"plt.figure(figsize=(12, 8))sns.heatmap(df.corr(), annot=True, cmap='coolwarm')plt.title('Feature Correlation Heatmap')return plt