pandas函数大全及详解(pandas函数速查手册)
作者:路由通
|

发布时间:2025-05-02 02:28:29
标签:
pandas作为Python数据分析领域的核心库,凭借其高效的数据处理能力和丰富的函数体系,已成为数据科学家、分析师及开发者的必备工具。其函数设计以DataFrame和Series为核心数据结构,覆盖数据读取、清洗、转换、分析、可视化等全流

pandas作为Python数据分析领域的核心库,凭借其高效的数据处理能力和丰富的函数体系,已成为数据科学家、分析师及开发者的必备工具。其函数设计以DataFrame和Series为核心数据结构,覆盖数据读取、清洗、转换、分析、可视化等全流程操作。通过灵活的API接口和链式调用机制,用户能够以简洁代码实现复杂数据任务。本文将从八个维度系统解析pandas函数体系,结合多平台实际应用场景,揭示其底层逻辑与实战技巧。
一、核心数据结构与基础操作
pandas的核心数据结构包含DataFrame(二维表结构)和Series(一维序列),两者共同构建了完整的数据处理框架。
数据结构 | 特性 | 典型操作 |
---|---|---|
DataFrame | 支持多维异构数据,可类比SQL表或Excel表格 | .loc/.iloc索引、.head()预览、.describe()统计 |
Series | 带索引的一维数组,支持向量化运算 | .value_counts()统计、.sort_values()排序、.map()映射 |
基础创建方法包括:
pd.DataFrame(dict)
:通过字典创建带列名的数据框pd.Series(list)
:将列表转换为序列结构pd.read_csv()
:从CSV文件加载数据(详见第二章节)
二、数据输入输出全解析
pandas支持多种数据源的读写操作,其函数参数设计兼顾灵活性与性能优化。
函数类别 | 支持格式 | 关键参数 |
---|---|---|
文本文件读取 | CSV/TXT/JSON/HTML/XML | sep/header/names/dtype/usecols |
数据库交互 | SQL/MySQL/PostgreSQL | connection_string/sql语句/index_col |
Excel处理 | .xlsx/.xls/.csv | sheet_name/header/skiprows/nrows |
典型函数对比:
函数名 | 适用场景 | 性能特征 |
---|---|---|
pd.read_csv() | 标准CSV文件 | 自动类型推断,支持chunksize分块 |
pd.read_excel() | 多Sheet Excel文件 | 依赖xlrd/openpyxl引擎,内存占用较高 |
pd.read_json() | 嵌套JSON结构 | 支持normalize展开,orient参数控制格式 |
三、数据清洗与预处理技术
数据清洗包含缺失值处理、类型转换、重复值清理等核心操作,直接影响后续分析质量。
清洗类型 | 对应函数 | 参数说明 |
---|---|---|
缺失值处理 | fillna()/dropna() | method参数支持前向/后向填充 |
类型转换 | astype()/to_numeric() | errors='coerce'将无效值转为NaN |
重复值处理 | duplicated()/drop_duplicates() | subset参数指定判断列 |
高级清洗技巧:
df.applymap()
:对每个元素执行自定义函数df.apply()
:按轴应用函数(axis=0列,axis=1行)df.transform()
:返回与原数据同形状的处理结果
四、数据选择与过滤策略
数据子集提取是数据分析的核心环节,pandas提供多种高效选择方式。
选择方式 | 语法示例 | 适用场景 |
---|---|---|
标签选择 | df.loc['row1'] | 基于索引名称的行/列选取 |
位置选择 | df.iloc[0:5, 2] | 基于整数位置的切片操作 |
条件过滤 | df[df['age'] > 30] | 布尔索引实现多条件筛选 |
混合选择案例:
df.loc[(df['score'] > 80) | (df['gender'] == 'F'), ['name', 'class']]
该语句实现:筛选成绩大于80或性别为女的学生,返回姓名和班级两列。
五、数据统计与聚合方法
pandas提供丰富的统计函数,支持多维度聚合计算。
统计类型 | 函数示例 | 聚合方法 |
---|---|---|
基础统计 | .sum()/.mean()/.max() | 默认按列(axis=0)聚合 |
分组统计 | .groupby().agg() | 支持多重分组键和自定义函数 |
窗口统计 | .rolling().mean() | 滑动窗口计算移动平均 |
交叉表与透视表:
pd.crosstab(df['gender'], df['city'])
:生成列联表df.pivot_table(index='date', columns='category', values='sales')
:创建多维透视表
六、时间序列处理专题
pandas内置强大的时间序列处理能力,支持日期解析、重采样、时区转换等操作。
功能模块 | 关键函数 | 参数说明 |
---|---|---|
日期解析 | pd.to_datetime() | format指定日期格式,errors处理解析错误 |
周期重采样 | .resample('W').sum() | offset参数支持自定义频率(如'2D'表示每两天) |
时区转换 | .tz_convert('UTC') | ambiguous参数处理模糊时间(夏令时调整) |
时间索引特性:
- 自动对齐不同频率的时间序列
- 支持
.shift(freq='3D')
进行时间偏移 .between_time('09:00','17:00')
筛选工作时间区间数据
七、数据合并与连接技术
数据集整合是分析流程关键环节,pandas提供多种合并策略。
合并方式 | 函数选择 | 匹配逻辑 |
---|---|---|
内连接 | .merge(how='inner') | |
左连接 | .merge(how='left') | |
交叉连接 |
纵向拼接方案对比:
函数名 | 参数特点 | 适用场景 |
---|---|---|
pd.concat([df1, df2], axis=0) | ||
df1.append(df2) | ||
pd.concat([df1, df2], ignore_index=True) |
八、数据可视化集成方案
pandas集成matplotlib绘图接口,支持快速生成基础图表。
图表类型 | 绘制方法 | 定制参数 |
---|---|---|
线型图 | df['data'].plot(kind='line') | |
柱状图 | df[['A','B']].plot(kind='bar') | |
散点图 |
高级可视化技巧:
df.plot(subplots=True)
:自动生成子图网格df['series'].hist(bins=20)
:绘制直方图并指定分箱数量df.boxplot(column=['value1','value2'])
:生成箱线图比较分布差异
相关文章
小米路由器作为智能家居生态的重要入口,其手机端设置流程的便捷性与功能完整性直接影响用户体验。通过实际测试多平台(Android/iOS/鸿蒙)及不同型号(AX6000/AX3000T/BE6500等),发现其设置逻辑高度统一且适配性强,但部
2025-05-02 02:28:25

析构函数是C++对象生命周期管理的核心机制,其调用时间直接影响资源释放的正确性与程序稳定性。析构函数的触发时机与对象的作用域、所有权关系、继承体系、异常处理等多种因素密切相关。例如,局部对象在离开作用域时自动析构,而动态分配的对象需依赖程序
2025-05-02 02:28:19

在计算机编程领域,while函数作为一种基础的控制结构,承担着根据条件重复执行代码块的核心功能。其本质是通过布尔表达式判断循环是否继续,与for循环、do-while循环共同构成程序流程控制的关键机制。从语法特性来看,while循环以“先判
2025-05-02 02:28:09

路由器作为家庭及办公网络的核心设备,其运行状态直接影响网络连通性与数据传输稳定性。当路由器出现红灯闪烁后突然熄灭的异常现象时,往往意味着设备存在系统性故障或关键组件失效。该现象可能由硬件损坏、固件异常、电源问题、网络攻击等多种因素引发,需结
2025-05-02 02:28:07

函数是编程中的核心抽象工具,其参数设计直接影响功能灵活性、代码可读性及执行效率。func函数的参数体系是多平台开发中的关键考量点,需平衡语法规范、运行环境差异和业务需求。参数类型(位置参数、默认参数、可变参数等)决定了函数接口的扩展性,而参
2025-05-02 02:28:08

函数是数学中描述变量间依赖关系的核心工具,其计算过程涉及定义域分析、表达式转换、运算规则应用及结果验证等多个环节。从基础代数到高等数学,函数计算贯穿多个学科领域,既包含简单的代入求值,也涉及复杂的极限、微分和积分运算。实际计算中需综合考虑函
2025-05-02 02:27:55

热门推荐