Skip to content

数据科学与机器学习

NumPy(数值计算库)

NumPy 是 Python 中用于数值计算的基础库,提供高效的多维数组对象和相关的数学函数。

NumPy 数组

创建数组:使用 numpy.array()numpy.zeros()numpy.ones() 等函数创建数组。

python
import numpy as np

# 创建一维数组
array_1d = np.array([1, 2, 3])
# 创建二维数组
array_2d = np.array([[1, 2, 3], [4, 5, 6]])

数组操作

数组的索引与切片:通过索引访问数组元素,使用切片操作提取部分数据。

python
# 访问元素
element = array_2d[0, 1]  # 访问第一行第二列的元素
# 切片
slice_array = array_2d[:, 1]  # 访问第二列

数组运算

基本运算:支持数组之间的加减乘除操作,使用 numpy 函数进行数学运算。

python
array_a = np.array([1, 2, 3])
array_b = np.array([4, 5, 6])
result = array_a + array_b  # 数组加法

广播(Broadcasting)

NumPy支持不同形状的数组之间的运算,自动扩展较小的数组以匹配较大的数组形状。

Pandas(数据分析库)

Pandas 是数据分析的强大工具,提供了数据结构(如 Series 和 DataFrame)来处理和分析数据。

数据结构

  • Series:一维标签数组。
  • DataFrame:二维表格数据,类似于电子表格。
python
import pandas as pd

# 创建 Series
series = pd.Series([1, 2, 3, 4])
# 创建 DataFrame
data = {'Column1': [1, 2], 'Column2': [3, 4]}
df = pd.DataFrame(data)

数据操作

数据选择与过滤:使用标签或条件选择数据。

python
# 选择列
column1 = df['Column1']
# 过滤数据
filtered_df = df[df['Column1'] > 1]

数据清洗

处理缺失值:使用 dropna()fillna() 方法处理缺失数据。

python
df.fillna(0, inplace=True)  # 将缺失值替换为0

数据合并与连接

使用 concat()merge() 方法合并不同的 DataFrame。

Matplotlib/Seaborn(数据可视化)

MatplotlibSeaborn 是常用的数据可视化库,能够创建多种类型的图表。

Matplotlib

创建简单的线图、柱状图、散点图等。

python
import matplotlib.pyplot as plt

# 简单的线图
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]
plt.plot(x, y)
plt.title("Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

Seaborn

Seaborn 基于 Matplotlib,提供更美观和复杂的统计图表。

python
import seaborn as sns

# 散点图
sns.scatterplot(data=df, x='Column1', y='Column2')
plt.show()

Scikit-learn(机器学习库)

Scikit-learn 是 Python 中最常用的机器学习库,提供多种分类、回归和聚类算法。

基本概念

数据预处理:数据归一化、标准化、缺失值处理等。

模型训练

使用不同的模型进行训练,例如线性回归、支持向量机、决策树等。

python
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split

# 数据准备
X = df[['Column1']]
y = df['Column2']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

# 线性回归模型训练
model = LinearRegression()
model.fit(X_train, y_train)

模型评估

通过交叉验证、混淆矩阵、准确率、均方误差等方法评估模型性能。

python
from sklearn.metrics import mean_squared_error

# 预测
predictions = model.predict(X_test)
mse = mean_squared_error(y_test, predictions)
print(f'Mean Squared Error: {mse}')

基础算法(线性回归、分类、聚类等)

线性回归

用于预测连续值。模型假设输入特征与输出之间存在线性关系。

python
from sklearn.linear_model import LinearRegression

# 创建和训练线性回归模型
model = LinearRegression()
model.fit(X_train, y_train)

分类

常用分类算法包括逻辑回归、K 近邻、支持向量机等,主要用于将数据分到不同类别。

python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

# 加载数据集
iris = load_iris()
X, y = iris.data, iris.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

# 创建和训练K近邻模型
knn = KNeighborsClassifier()
knn.fit(X_train, y_train)

聚类

K 均值聚类是常用的无监督学习算法,用于将数据分成K个簇。

python
from sklearn.cluster import KMeans

# K均值聚类
kmeans = KMeans(n_clusters=3)
kmeans.fit(X)
编程洪同学服务平台是一个广泛收集编程相关内容和资源,旨在满足编程爱好者和专业开发人员的需求的网站。无论您是初学者还是经验丰富的开发者,都可以在这里找到有用的信息和资料,我们将助您提升编程技能和知识。
专业开发
高端定制
售后无忧
站内资源均为本站制作或收集于互联网等平台,如有侵权,请第一时间联系本站,敬请谅解!本站资源仅限于学习与参考,严禁用于各种非法活动,否则后果自行负责,本站概不承担!