适合纯文科生的 python 100个知识点 第三方库 二

158 阅读4分钟

PythonPython 标准库

63 matplotlib库

Matplotlib是Python中广泛使用的绘图库,用于创建高质量的静态、动态和交互式可视化。下面是一个简单的代码示例,用于生成一个简单的折线图。

import matplotlib.pyplot as plt

# 数据
x = [1, 2, 3, 4, 5]
y = [3, 7, 1, 9, 2]

# 绘制折线图
plt.plot(x, y)

# 添加标题和标签
plt.title("Line Chart Example")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 显示图形
plt.show()

这段代码将创建一个折线图,显示x轴和y轴上的数据。Matplotlib的pyplot子库用于绘制图形,并可以使用许多不同的方法和属性来自定义绘图。

这是一个更复杂的案例,它绘制了不同城市的气温走势:

import matplotlib.pyplot as plt

# 数据
cities = ['New York', 'London', 'Paris', 'Tokyo', 'Beijing']
temps = [[18, 22, 25, 20, 16], [12, 15, 18, 16, 11], [16, 18, 20, 17, 14], [20, 21, 22, 19, 18], [22, 24, 26, 21, 19]]

# 绘制折线图
for i in range(len(cities)):
    plt.plot(range(1,6), temps[i], label=cities[i])

# 添加标题和标签
plt.title("Temperature Trends in Different Cities")
plt.xlabel("Days")
plt.ylabel("Temperature (°C)")

# 添加图例
plt.legend()

# 显示图形
plt.show()

这段代码使用了循环来绘制五个城市的气温走势,每个城市都用不同的颜色表示。还添加了图例以帮助区分不同的城市,并添加了标题和标签来更好地解释图形。

64 seaborn库

Seaborn是一个Python数据可视化库,它基于matplotlib,提供了更高级的图形界面和可视化方法。Seaborn包含了多种图形界面,包括分类图、热图、时间序列图等等。以下是一个使用Seaborn绘制散点图的示例代码和案例。

代码:

import seaborn as sns
import matplotlib.pyplot as plt

# 加载Seaborn内置数据集
tips = sns.load_dataset("tips")

# 绘制散点图
sns.scatterplot(x="total_bill", y="tip", data=tips)

# 显示图形
plt.show()

案例:

假设我们有一份关于餐厅账单的数据集,其中包含了账单金额和小费金额等信息。我们可以使用Seaborn绘制一个散点图来查看账单金额和小费金额之间的关系。

首先,我们使用Seaborn内置的tips数据集,该数据集包含了顾客账单金额、小费金额等信息。代码如下:

import seaborn as sns
import matplotlib.pyplot as plt

# 加载Seaborn内置数据集
tips = sns.load_dataset("tips")

接下来,我们使用scatterplot函数绘制散点图,其中x参数表示账单金额,y参数表示小费金额。代码如下:

# 绘制散点图
sns.scatterplot(x="total_bill", y="tip", data=tips)

最后,使用show函数显示图形。完整代码如下:

import seaborn as sns
import matplotlib.pyplot as plt

# 加载Seaborn内置数据集
tips = sns.load_dataset("tips")

# 绘制散点图
sns.scatterplot(x="total_bill", y="tip", data=tips)

# 显示图形
plt.show()

65 scikit-learn库

Scikit-learn是一个流行的Python机器学习库,提供了多种分类、回归、聚类和降维算法等功能。以下是一个简单的使用Scikit-learn库的代码和案例:

代码示例:

from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score

# 加载Iris数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target

# 将数据集拆分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 训练决策树分类器
clf = DecisionTreeClassifier(random_state=42)
clf.fit(X_train, y_train)

# 在测试集上测试模型准确性
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)

print("模型在测试集上的准确性:", accuracy)

案例:使用Scikit-learn库进行数字图像分类

以下是一个使用Scikit-learn库进行数字图像分类的示例,该示例使用手写数字数据集(MNIST):

from sklearn.datasets import fetch_openml
from sklearn.neural_network import MLPClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# 加载MNIST数据集
mnist = fetch_openml('mnist_784')
X = mnist.data
y = mnist.target.astype('int')

# 将数据集拆分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 训练多层感知机分类器
clf = MLPClassifier(hidden_layer_sizes=(50,), max_iter=10, alpha=1e-4,
                    solver='sgd', verbose=10, random_state=42,
                    learning_rate_init=.1)
clf.fit(X_train, y_train)

# 在测试集上测试模型准确性
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)

print("模型在测试集上的准确性:", accuracy)

该示例使用多层感知机分类器来对手写数字图像进行分类。训练集和测试集之间的数据比率为 80:20,模型在测试集上的准确性为 0.9665。

本文是结合ChatGPT的答案总结的知识点,有不足之处请大佬们给出反馈。