python pandas基础数据操作¶
0 背景¶
之前刚好有看到WPS支持Python了: WPS支持python, 因此终于可以使用python对数据进行处理了, 同时也可以使用pandas , numpy语法, 因此, 本文主要借助WPS平台对数据进行一些基本的查询操作, 熟悉一些pandas语法。
Python的Pandas库是一种功能强大的数据分析和处理工具,非常适合用于数据科学和统计领域。以下是Pandas的一些核心特点和功能:
- 数据结构:DataFrame:一个二维数据结构,类似于Excel表格或SQL表,可以存储不同类型的列。Series:单列的数据结构,每个DataFrame都由一个或多个Series组成。
- 数据读取与写入:支持多种格式的数据读取和写入,如CSV、Excel、JSON、HTML和SQL等。
- 数据清洗和预处理:提供丰富的功能来处理缺失数据、重复数据、数据过滤、转换和数据标准化。
- 数据探索与分析:支持数据排序、分组(groupby)、数据合并与连接。提供便捷的数据统计和聚合方法,如计算均值、中位数、标准差等。
- 数据可视化:可以与Matplotlib等库结合使用,方便地进行数据的图形化展示。
- 时间序列分析:强大的时间序列数据处理能力,包括日期范围生成、频率转换、移动窗口统计等。
- 扩展性:可以与多种Python数据科学库结合使用,如NumPy、SciPy、Scikit-learn等。
Pandas的这些特性让它成为处理和分析结构化数据的首选工具之一。
1 使用¶
本文基于WPS平台, 自带了pandas的包, 若在python中使用, 需额外安装:
案例数据如下:

在WPS中初始化数据:
df = xl("$A$1:$G$18", headers=True, sheet_name="工作表1")
# 设置索引为uid列
df.set_index('uid',inplace=True)
print(df.head())
我们进行一些查询数据的操作:
获取单列¶
获取多列¶
获取单列(在不知道列名的情况下, 通过位置获取第1列)¶
获取多列(在不知道列名的情况下, 通过位置获取第1-3列)¶
获取单行(通过索引)¶
获取单行(通过位置第n行, 不通过索引)¶
获取多行(通过索引)¶
获取多行(通过位置第n行到第m行, 不通过索引)¶
自定义获取多行(通过自定义的一个标签列表,获取这些标签对应的行)¶
# 自定义获取多行(通过自定义的一个标签列表,获取这些标签对应的行)
labels = [1, 2, 10]
many_rows = df[df.index.isin(labels)]
# print(many_rows)
通过判断条件过滤行¶
通过位置获取多行和多列¶
通过索引获取多行, 列名获取多列¶
通过位置获取多行, 列名获取多列¶
# 通过位置获取多行, 列名获取多列
# 先获取索引所在的列
column_index = df.columns.get_indexer(['uname', 'usex', 'ucity'])
selected_data_by_position = df.iloc[2:9, column_index]
print(selected_data_by_position)
通过索引获取多行, 位置获取多列¶
获取列名¶
获取形状(行数和列数)¶
获取索引¶
获取描述统计信息¶
# 获取描述统计信息
stats = df.describe()
stats = df['uage'].describe()
# stats = df[['uname', 'ucity']].describe()
print(stats)
2 关于¶
欢迎关注我的微信公众号¶