Extending Python with Packages and APIs
Extending Python with Packages and APIs
Using functions from a local file
导入函数的方式:
1、将整个模块导入,然后通过模块名加点号的方式来访问其中的函数。也可以在第一行末尾加as,用别名。
1 |
|
2、只导入需要的特定函数。
1 |
|
3、导入模块中的所有函数和变量。
1 |
|
Built-in packages
- module模块 是最小的代码单元。
- package包 是多个模块的集合,用于组织代码。
- library库 是一个更广泛的概念,可以指单个模块、多个模块或一个包,通常提供特定的功能。
math 库
- 主要功能: 提供了大量的数学函数,用于进行基本的数学运算。
- 常用函数:
sqrt(x)
:计算 x 的平方根。pow(x, y)
:计算 x 的 y 次方。sin(x)
、cos(x)
、tan(x)
:三角函数。exp(x)
:计算 e 的 x 次方。log(x)
、log10(x)
:自然对数和以 10 为底的对数。ceil(x)
:向上取整。floor(x)
:向下取整。radians(degrees)
:将角度转换为弧度。degrees(radians)
:将弧度转换为角度。
statistics 库
- 主要功能: 提供了计算各种统计数据的函数。
- 常用函数:
mean(data)
:计算数据的平均值。median(data)
:计算数据的中位数。mode(data)
:计算数据的众数。variance(data)
:计算数据的方差。stdev(data)
:计算数据的标准差。pvariance(data)
:计算总体方差。pstdev(data)
:计算总体标准差。
random 库
- 主要功能: 用于生成各种随机数。
- 常用函数:
random()
:生成 [0.0, 1.0) 之间的随机浮点数。randint(a, b)
:生成 [a, b] 之间的随机整数。uniform(a, b)
:生成 [a, b) 之间的随机浮点数。choice(seq)
:从序列 seq 中随机选择一个元素。shuffle(x)
:将序列 x 中的元素随机打乱。sample(population, k)
:从 population 序列中随机抽取 k 个元素,组成一个新列表。
Using third-party packages
pandas
- 主要功能: pandas 是 Python 中强大的数据分析和操作工具,特别擅长处理表格型数据。
- 常用功能:
- Series: 一维带标签数组,类似于 Excel 中的一列。
- DataFrame: 二维带标签表格,类似于 Excel 工作表。
- 读取数据: 从各种数据源(如 CSV、Excel、SQL 数据库)读取数据。
- 数据清洗: 处理缺失值、重复值、异常值。
- 数据转换: 数据类型转换、重塑、合并、分组。
- 数据分析: 计算统计量、排序、筛选、分组聚合。
- 常用函数:
read_csv()
,read_excel()
: 读取 CSV 和 Excel 文件。head()
,tail()
: 查看数据的前几行或后几行。describe()
: 计算数据的基本统计量。groupby()
: 按一列或多列分组。merge()
: 合并 DataFrame。pivot_table()
: 创建透视表。
NumPy
- 主要功能: 提供了高性能的多维数组对象和对这些数组进行操作的工具。
- 常用功能:
- ndarray: 多维数组对象,是 NumPy 的核心数据结构。
- 数组创建: 创建各种类型的数组,如随机数组、全零数组、全一数组等。
- 数组运算: 支持向量化运算,大大提高计算效率。
- 线性代数: 提供线性代数运算,如矩阵乘法、求逆等。
- 随机数生成: 生成各种随机数。
- 常用函数:
array()
: 创建数组。arange()
: 创建等差数组。linspace()
: 创建等间隔数组。reshape()
: 改变数组形状。dot()
: 计算矩阵乘积。random.rand()
,random.randn()
: 生成随机数。
Matplotlib
- 主要功能: Matplotlib 是 Python 的绘图库,用于创建高质量的静态、动态和交互式图表。
- 常用功能:
- 线图: 绘制折线图。
- 散点图: 绘制散点图。
- 直方图: 绘制直方图。
- 饼图: 绘制饼图。
- 箱线图: 绘制箱线图。
- 子图: 在一个画布上绘制多个子图。
- 自定义: 对图表进行自定义设置,如标题、标签、颜色等。
- 常用函数:
plot()
: 绘制线图。scatter()
: 绘制散点图。hist()
: 绘制直方图。pie()
: 绘制饼图。boxplot()
: 绘制箱线图。subplot()
: 创建子图。
Exercise 1
答:
1 |
|
df[]
不是函数,它是 pandas DataFrame 的索引运算符(indexing operator),是一种特殊的语法。
df['Model']
选择数据表中的’Model’列.str.contains('Accord', case=False)
- 检查每一行的Model列是否包含’Accord’这个词
case=False
表示不区分大小写,比如’accord’、’ACCORD’都会被匹配到- 这会返回一个布尔值序列(True/False)
df[...]
使用这个布尔序列来筛选原始数据表,只保留结果为True的行。
APIs to get data from the web
1 |
|
Extending Python with Packages and APIs
https://blakehansen130.github.io/2024/10/24/AI Python for Beginners:Extending Python with Packages and APIs/