NumPy
NumPy是Python中用于科学计算的基础包,提供了强大的多维数组对象和用于操作数组的函数。它是许多其他数据科学库的基础,例如Pandas和Scikit-learn。
主要功能:
- 多维数组:NumPy提供了多维数组对象(称为ndarray),用于存储和操作数据。
- 数学函数:包括各种数学函数,如三角函数、指数函数等。
- 线性代数:提供了线性代数运算,如矩阵乘法、求逆等。
- 随机数生成:包括各种随机数生成函数。
示例用法:
import numpy as np # 创建数组 arr = np.array([1, 2, 3, 4, 5]) # 数组运算 arr_sum = np.sum(arr) arr_mean = np.mean(arr) # 矩阵乘法 matrix1 = np.array([[1, 2], [3, 4]]) matrix2 = np.array([[5, 6], [7, 8]]) result = np.dot(matrix1, matrix2) # 生成随机数 random_array = np.random.rand(3, 3)
Pandas
Pandas是用于数据分析和处理的库,提供了高级数据结构和数据操作工具。
主要功能:
- 数据结构:Series(一维数组)和DataFrame(二维标记数组),用于存储和操作数据。
- 数据操作:包括索引、切片、筛选、合并、分组等操作。
- 数据清洗:处理缺失数据、重复数据等。
- 数据读写:支持多种数据格式的读写,如CSV、Excel、SQL数据库等。
示例用法:
import pandas as pd # 创建DataFrame data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]} df = pd.DataFrame(data) # 数据操作 df['Age_mean'] = df['Age'].mean() filtered_df = df[df['Age'] > 30] # 数据读写 df.to_csv('data.csv', index=False) new_df = pd.read_csv('data.csv')
Matplotlib
Matplotlib是Python中常用的绘图库,用于创建各种类型的静态、交互式和动态图形。
主要功能:
- 绘制图形:包括折线图、散点图、柱状图、饼图等。
- 定制化:支持自定义图形的样式、颜色、标签等。
- 多图组合:可以将多个图形组合在一张图中展示。
- 导出图像:支持将图形导出为多种格式,如PNG、PDF等。
示例用法:
import matplotlib.pyplot as plt # 绘制折线图 x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.plot(x, y) plt.xlabel('X') plt.ylabel('Y') plt.title('Line Plot') plt.show() # 绘制柱状图 plt.bar(x, y) plt.xlabel('X') plt.ylabel('Y') plt.title('Bar Plot') plt.show()
Scikit-learn
Scikit-learn是Python中用于机器学习的库,提供了各种机器学习算法和工具。
主要功能:
- 机器学习算法:包括分类、回归、聚类、降维等各种算法。
- 数据预处理:提供了数据标准化、特征选择、特征变换等功能。
- 模型评估:支持模型性能评估和交叉验证。
- 模型选择:包括超参数调优、模型比较等功能。
示例用法:
from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import accuracy_score # 加载数据集 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, random_state=42) # 训练模型 knn = KNeighborsClassifier() knn.fit(X_train, y_train) # 预测并评估模型 y_pred = knn.predict(X_test) accuracy = accuracy_score(y_test, y_pred) print("Accuracy:", accuracy)
以上是对NumPy、Pandas、Matplotlib和Scikit-learn这几个常用库的简要介绍和示例用法。