简介
Pandas 是一个开源的数据分析和操作库,它是 Python 数据科学生态系统中的核心组件之一。Pandas 提供了高性能、易用的数据结构和数据分析工具,非常适合处理表格数据、时间序列数据以及进行数据分析和清洗。
-
数据结构:
- Series:一维数组结构,可以包含任何数据类型。
- DataFrame:二维表格型数据结构,类似于 Excel 表格,可以包含多种数据类型。
-
创建数据结构:
- 可以从列表、字典、NumPy 数组等多种数据源创建 Series 和 DataFrame。
-
索引和选择:
- Pandas 提供了灵活的索引和选择机制,可以快速访问和操作数据。
-
缺失数据处理:
- Pandas 提供了处理缺失数据的多种方法,例如填充、删除等。
-
数据清洗:
- 可以轻松地对数据进行清洗,包括去除重复数据、数据过滤等。
-
数据合并:
- 支持多种数据合并操作,如连接(concat)、合并(merge)和连接(join)。
-
分组和聚合:
- 可以使用分组(groupby)功能对数据进行分组,并应用聚合函数。
-
时间序列分析:
- Pandas 内置了对时间序列数据的支持,可以轻松地进行时间序列分析。
-
数据导出和导入:
- 支持多种数据格式的导入和导出,如 CSV、Excel、JSON、SQL 等。
-
性能:
- Pandas 在内部使用 NumPy 进行操作,提供了高性能的数据操作能力。
-
可视化:
- 虽然 Pandas 本身不是可视化库,但它可以与 Matplotlib、Seaborn 等可视化库无缝集成。
-
扩展性:
- Pandas 可以通过 Cython 或 C 语言扩展进行扩展,以提高性能。
一些操作
import pandas as pd
print(pd.__version__)
# Series( data, index, dtype, name, copy)
# data: 序列数据,可以是列表、字典、ndarray等。
# index: 索引标签。可以是索引对象,也可以是索引列表。如果未指定,将使用默认的整数索引。
# dtype: 数据类型。可以指定数据的类型,如 int, float, str 等。
# name: 序列的名称。可以是任何哈希对象。
# copy: 是否复制数据。如果设置为 False,则数据不会被复制,这可以节省内存和时间。默认为 True。
list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
series = pd.Series(list, name="aaa")
print(series)
# DataFrame( data, index, columns, dtype, copy)
# data: 序列数据,可以是:列表的列表、列表的元组、字典的列表、字典的字典、Series 对象的字典。ndarray(如果提供,列名需要指定)。
# index: 行标签列表/数组。可以是索引对象,也可以是索引标签列表。
# columns: 列标签列表/数组。可以是索引对象,也可以是列名列表。
# dtype: 指定数据类型。可以是单个数据类型(所有列都是这种类型),也可以是字典,指定每列的数据类型。
# copy: 是否复制数据。如果设置为 False,则数据不会被复制,这可以节省内存和时间。默认为 True。
data1 = {
'a': [1, 2, 3],
'b': [4, 5, 6],
'c': [7, 8, 9],
}
data2 = pd.DataFrame(data1)
print(data2)
# Pandas CSV操作
# pd.read_csv(path)读取csv文件数据
# pd.to_csv()将DataFrame 存储为 csv 文件
data2.to_csv('data.csv')