机器学习用到的Python代码

实现机器学习相关常见任务的Python代码示例:

一、数据预处理

1. 加载数据(以CSV文件为例)

使用 pandas 库

import pandas as pd

# 读取CSV文件

data = pd.read_csv('your_data.csv') 

1. 处理缺失值(以填充均值为例)

from sklearn.impute import SimpleImputer

# 假设数据集中数值型特征在列索引0到3

num_cols = list(range(4)) 

imputer = SimpleImputer(strategy='mean')

data[num_cols] = imputer.fit_transform(data[num_cols])

1. 特征标准化

使用 sklearn 库的 StandardScaler 

from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()

# 对数值型特征进行标准化

data[num_cols] = scaler.fit_transform(data[num_cols]) 

二、监督学习算法 - 线性回归

from sklearn.linear_model import LinearRegression

from sklearn.model_selection import train_test_split

# 假设X是特征矩阵,y是目标变量

X = data.drop('target_column', axis = 1)

y = data['target_column']

# 划分训练集和测试集

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) 

model = LinearRegression()

model.fit(X_train, y_train)

# 预测

y_pred = model.predict(X_test) 

三、监督学习算法 - 逻辑回归(用于分类问题)

from sklearn.linear_model import LogisticRegression

from sklearn.metrics import accuracy_score

# 假设X是特征矩阵,y是分类目标变量

X = data.drop('target_column', axis = 1)

y = data['target_column']

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) 

四、无监督学习算法 - PCA(主成分分析)

from sklearn.decomposition import PCA

# 假设X是特征矩阵

X = data.drop('target_column', axis = 1)

pca = PCA(n_components=0.95) # 保留95%方差

X_pca = pca.fit_transform(X) 

五、模型评估 - 计算均方误差(用于回归问题)

from sklearn.metrics import mean_squared_error

# 假设y_test是真实值,y_pred是预测值

mse = mean_squared_error(y_test, y_pred) 

六、模型保存与加载

1. 保存模型(以线性回归模型为例)

import joblib

joblib.dump(model, 'linear_regression_model.pkl') 

1. 加载模型

loaded_model = joblib.load('linear_regression_model.pkl') 

这些代码只是基础示例,实际应用中需根据具体数据和任务进行调整和优化。