这是Pandas 的入门教程,本教程展示了如何使用 Pandas 库在 Python 中进行基本数据分析。
Pandas
Pandas 是 BSD 许可的开放源代码库,为 Python 编程语言提供了高性能,易于使用的数据结构和数据分析工具。
库的名称来自“面板数据”一词,这是对数据集的计量经济学术语,其中包括对同一个人在多个时间段内的观察。
它提供用于操纵数值表和时间序列的数据结构和操作。 主要的两种数据类型是:Series
和DataFrame
。
DataFrame
是带有标记轴(行和列)的二维大小可变的,可能是异构的表格数据结构。 它是一个类似于电子表格的数据结构。 Series
是DataFrame
的单个列。 DataFrame
可以看作是Series
对象的字典。
安装 Pandas
使用以下命令安装 Pandas:
我们使用pip3
命令安装pandas
模块。
一些示例还使用numpy
。
Pandas 简单的例子
以下是一个简单的 Pandas 示例。
simple.py
在程序中,我们创建一个简单的DataFrame
并将其打印到控制台。
我们导入 Pandas 库。
这是要在框架中显示的数据。 每个嵌套列表在表中都是一行。 请注意,有很多方法可以初始化 Pandas DataFrame
。
根据数据创建一个DataFrame
。 我们用columns
属性给框架列名。
这是输出。 第一列是行索引。
Pandas 改变索引
我们可以更新索引,使其不从 0 开始。
change_index.py
在示例中,我们将 1 加到索引。
这是输出。
Pandas 标量序列
以下示例创建一系列标量值。
series_scalar.py
我们有一列包含数字。
左列是索引。
Pandas 序列 ndarray
我们可以从 numpy ndarray
创建一个系列对象。
series_numpy.py
该示例从ndarray
创建一列字母。
这是输出。
Pandas 序列字典
可以从 Python 字典创建系列。
series_dict.py
该示例根据一系列项目创建一个系列对象。
索引由项目名称组成。
Pandas 序列检索
以下示例从一系列对象中检索值。
series_retrieve.py
该示例从系列对象检索值。
在这里,我们得到一个值。
我们通过它们的索引检索行。
在这里,我们通过索引标签获取值。
这是输出。
Pandas 自定义索引
索引列不必是数字。 我们可以创建自己的自定义索引。
custom_index.py
在示例中,我们从数据字典创建数据框架。 我们先打印数据框,然后使用index
属性更改索引列。
这是输出。
Pandas 索引、列和值
Pandas DataFrame
具有三个基本部分:索引,列和值。
index_vals_cols.py
该示例显示数据框的索引,列和值。
这是输出。
Pandas 的总和和最大值
下面的示例计算数据帧列中值的总和和最大值。 它还使用numpy
库。
sum_max.py
该示例计算最大值和值之和。 它使用numpy's
arange()
函数生成值数组。
当计算总和值时,我们通过名称来引用该列。
这是输出。
Pandas 读 CSV
Pandas 使用read_csv()
从 CSV 文件读取数据。
military_spending.csv
这是一个简单的 CSV 文件,其中包含有关国家军事支出的数据。
注意: CSV文件的第一行可能有可选的列名.
read_from_csv.py
该示例从military_spending.csv
文件中读取所有数据,并以表格格式将其打印到控制台。 它使用read_csv()
方法。
由于我们有 positions 列,因此我们从输出中隐藏索引。
这是输出。
Pandas 写 CSV
用to_csv()
将DataFrame
写入 CSV 文件。
write_csv.py
该示例将数据写入users.csv
文件。
Pandas 随机行
可以使用sample()
选择数据帧中的随机行。
random_sample.py
在该示例中,我们从数据框中打印了三个随机行。
Pandas 数据定位
to_dict()
将数据框转换为 Python 字典。 字典可以显示在不同的数据输出中。
data_orient.py
该示例以六种不同格式将数据帧打印到控制台。
Pandas 描述
describe()
方法生成描述性统计数据,该数据统计总结了NaN
值之外的数据集分布的集中趋势,离散度和形状。
describing.py
该示例从数据框中打印描述性统计信息。
这是输出。
Pandas 计数
下一个示例对值进行计数。
counting.py
count()
方法计算每列的值数。 用len(df.columns)
检索列数。 shape
返回表示数据帧维数的元组。
请注意,这些列具有不同数量的值,因为缺少某些值。
Pandas head()
和tail()
使用head()
和tail()
方法,我们可以显示数据帧的前 n 行和后 n 行。
head_tail.py
该示例显示数据框的前四行和后四行。
这是输出。
Pandas 没有标题和索引
当我们显示数据框时,我们可以隐藏标题和索引。
no_header_index.py
通过将header
和index
属性设置为False
,我们将输出没有标题和索引的数据帧。
这是输出。 (值 1 到 4 来自 pos 列。)
Pandas loc()
loc()
方法允许按标签或布尔数组访问一组行和列。
select_loc.py
该示例使用loc()
函数。
在这里,我们得到第一行。 我们通过其索引标签访问该行。
在这里,我们获得了 Items 列的前两行。
这是输出。
第二个示例显示如何通过布尔数组选择。
select_loc2.py
该示例通过布尔数组选择行。
这是输出。
在第三个示例中,我们在选择时应用条件。
select_loc3.py
该示例从employees.csv
文件中打印出符合条件的前五行:薪水在 10000 至 50000 之间。
Pandas iloc
iloc
函数允许基于整数位置的索引,以按位置进行选择。
select_iloc.py
该示例显示了如何使用iloc()
选择行和列的各种组合。
Pandas 排序
sort_values()
按升序或降序对系列进行排序。
sorting.py
该示例按升序或降序对列进行排序。
这是输出。
在下一个示例中,我们按多列排序。
sorting2.py
该示例按包含整数的第一列进行排序。 然后,将考虑第一排序的结果对第二列进行排序。
这是输出。
在本教程中,我们使用了 Pandas 库。
您可能也对以下相关教程感兴趣: Python 教程, Openpyxl 教程,Python CSV 教程,Pandas 教程。