Pandas Cheat Sheet:pandas 数据整理(Data Wrangling)一页速查手册
Pandas Cheat Sheetpandas 数据整理Data Wrangling一页速查手册【免费下载链接】pandasFlexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more项目地址: https://gitcode.com/gh_mirrors/pa/pandasPandas Cheat Sheet 是 pandas 官方仓库维护的“一页纸”数据整理速查手册浓缩了从创建 DataFrame、筛选子集、重塑melt/pivot、合并merge到类型转换、日期时间访问器、绘图与文件 I/O 的全部高频操作。本文完整复刻并扩写了该速查表的三大板块内容并结合仓库源码指出关键 API 的落点读完即可把它当作日常写 pandas 代码时的检索式参考。Cheat Sheet 是什么速查表本体由 doc/cheatsheet/README.md 说明其核心事实如下该手册使用 Microsoft PowerPoint 2013 制作在 PPT 中执行“另存为 PDF”即可得到 PDF 版本原稿由 Princeton Consultants 的 Irv Lustig 编写灵感来自 RStudio 的 Data Wrangling Cheatsheet提供三种语言版本其中英文版包含其他语言版本没有的额外内容版本PDFPPTX英文EnglishPandas_Cheat_Sheet.pdfPandas_Cheat_Sheet.pptx日文JapanesePandas_Cheat_Sheet_JA.pdfPandas_Cheat_Sheet_JA.pptx波斯文PersianPandas_Cheat_Sheet_FA.pdfPandas_Cheat_Sheet_FA.pptxREADME 还提到一个“替代方案”DataCamp 以 PDF、Google Colab 和 Streamlit 三种形式发布的 Pandas Cheat Sheet详见 README 末尾表格此处不复述外链。仓库中这 6 个文件位于 doc/cheatsheet/ 目录可直接查看或下载打印。速查表整体遵循“Tidy Data整洁数据”这一基础理念每个变量variable存于各自独立的列、每个观测observation存于各自独立的行。README 与 PPT 首页均强调整洁数据与 pandas 的向量化操作天然契合操作变量时 pandas 会自动保持观测的对齐没有比这更符合 pandas 直觉的数据格式。以下各节按 PPT 三页幻灯片的脉络完整展开。一、创建 DataFrameCreating DataFrames速查表给出了三种构造 DataFrame 的典型写法。1. 按列指定值字典形式df pd.DataFrame( {a: [4, 5, 6], b: [7, 8, 9], c: [10, 11, 12]}, index[1, 2, 3] )2. 按行指定值二维列表形式df pd.DataFrame( [[4, 7, 10], [5, 8, 11], [6, 9, 12]], index[1, 2, 3], columns[a, b, c] )3. 带 MultiIndex 的 DataFramedf pd.DataFrame( {a: [4, 5, 6], b: [7, 8, 9], c: [10, 11, 12]}, indexpd.MultiIndex.from_tuples( [(d, 1), (d, 2), (e, 2)], names[n, v] ) )二、筛选行逻辑条件与 query速查表将“按逻辑条件抽取行”作为独立小节核心写法有布尔索引df[df.Length 7]—— 提取满足逻辑条件的行正则列名筛选df.filter(regexregex)—— 选出列名匹配正则表达式的列字符串正则匹配配合str访问器df.query(Name.str.startswith(abc), enginepython)成员判断df.column.isin(values)—— 判断列值是否属于给定集合空值判断pd.isnull(obj)是 NaN与pd.notnull(obj)不是 NaN。Python/pandas 逻辑运算符速查来自 PPT 第一页的对照表符号含义符号含义小于等于!不等于小于或等于大于大于或等于,\|,~,^逻辑 and、or、not、xordf.any(),df.all()逻辑 any、allquery()用法query()支持用布尔表达式按行筛选且可直接用列名书写df.query(Length 7) df.query(Length 7 and Width 8)抽样与排序选择类操作同一页右侧列出的高频方法代码作用df.drop_duplicates()删除重复行只考虑列值df.sample(frac0.5)随机抽取 50% 的行df.sample(n10)随机抽取 10 行df.nlargest(n, value)选取并排序前 n 大的条目df.nsmallest(n, value)选取并排序前 n 小的条目df.head(n)选取前 n 行df.tail(n)选取后 n 行三、子集操作loc / iloc / at / iat 与正则PPT 将子集操作划分为“子集观测行”“子集变量列”“行列同时选”三类核心规则是第一索引选行第二索引选列。代码作用df[width]或df.width按名称选择单列df[[width, length, species]]按名称选择多列df.iloc[10:20]选择第 10 至 20 行位置索引df.iloc[:, [1, 2, 5]]选择位置 1、2、5 的列第一列位置为 0df.loc[:, x2:x4]选择 x2 到 x4 之间的全部列含边界df.loc[df[a] 10, [a, c]]满足条件的行 指定列df.iat[1, 2]按索引位置访问单个值df.at[4, A]按标签访问单个值速查表的总结句值得记住用df.loc[]和df.iloc[]选行、选列或行列用df.at[]和df.iat[]访问单个值。正则表达式示例PPT 首页给出的 5 个例子均针对列名匹配正则含义\.匹配包含句点.的字符串Length$匹配以Length结尾的字符串^Sepal匹配以Sepal开头的字符串^x[1-5]$匹配以x开头、以 1–5 之一结尾的字符串^(?!Species$).*匹配除Species之外的所有字符串负向先行断言四、重塑数据Reshapingmelt、pivot、concat 与方法链这一节是速查表的第一大板块主题是“改变布局、排序、重排索引、重命名”代码作用pd.melt(df)将列聚集为行宽表 → 长表df.pivot(columnsvar, valuesval)将行摊开为列长表 → 宽表pd.concat([df1, df2])纵向拼接行pd.concat([df1, df2], axis1)横向拼接列df.sort_values(mpg)按某列的值升序排列行df.sort_values(mpg, ascendingFalse)按某列的值降序排列行df.rename(columns{y: year})重命名列df.sort_index()对索引排序df.reset_index()把索引重置为行号原索引变成列df.drop(columns[Length, Height])删除指定列方法链Method Chaining大多数 pandas 方法都会返回 DataFrame因此可以把一个方法的结果继续交给下一个方法PPT 给出的示例df (pd.melt(df) .rename(columns{variable: var, value: val}) .query(val 200) )PPT 原话指出由于多数方法返回 DataFrame代码可读性得以提升。源码佐证melt的实现位于 pandas/core/reshape/melt.py函数melt见 L45 起DataFrame.melt与DataFrame.pivot分别定义在 pandas/core/frame.py 与 pandas/core/frame.pypd.concat的入口在 pandas/core/reshape/concat.py。阅读这些文件可以进一步理解id_vars、var_name等未在速查表展开的参数。五、合并数据集Combine Data Setsmerge 与过滤式联接速查表第二页首先给出四张示例小表adf 含 A、B 两行bdf 含 C 行键为x1演示四种标准联接代码作用pd.merge(adf, bdf, howleft, onx1)左联接把 bdf 中匹配的行接到 adf 上未匹配处为 NaNpd.merge(adf, bdf, howright, onx1)右联接把 adf 中匹配的行接到 bdf 上pd.merge(adf, bdf, howinner, onx1)内联接只保留两边都有的行pd.merge(adf, bdf, howouter, onx1)外联接保留所有值、所有行过滤式联接Filtering Joins——不真正拼接列只按成员关系过滤行adf[adf.x1.isin(bdf.x1)] # adf 中在 bdf 里有匹配的所有行 adf[~adf.x1.isin(bdf.x1)] # adf 中在 bdf 里没有匹配的所有行逐行变换类方法同一页右侧常用于构造衍生列代码作用shift(1)复制一份值向下平移 1产生滞后 lagshift(-1)复制一份值向上平移 1产生超前rank(methoddense)排名并列不留空档rank(methodmin)排名并列取最小名次rank(methodfirst)排名并列名次归先出现的值rank(pctTrue)排名归一化到区间 [0, 1]cumsum()累积和cummax()累积最大值cummin()累积最小值cumprod()累积乘积六、类型转换Changing Type代码作用pd.to_numeric(data)将非数值类型转换为数值类型pd.to_datetime(data)将非日期类型转换为 datetime 类型pd.to_timedelta(data)将非 timedelta 类型转换为 timedeltadf.astype(type)将数据转换为几乎任意给定类型包括 categoricaldf.infer_objects()尝试为 object 类型数据推断出更合适的类型df.convert_dtypes()将各列转换为尽可能好的 dtype七、日期时间组件提取Datetime对含 datetime 数据的 Series使用dt访问器提取各分量PPT 第二页给出 7 个示例代码作用s.dt.year提取年份s.dt.month提取月份整数s.dt.day提取日整数s.dt.quarter该日期所在的季度s.dt.hour提取小时s.dt.minute提取分钟s.dt.second提取秒八、映射Mappingmap 与 apply速查表强调两者都是“把映射应用到 DataFrame/Series 的每个元素上适合重新归类或变换数据”s.map(lambda x: 2 * x) # 返回 Series 的副本其中每个元素都变为原来的 2 倍 df.apply(lambda s: s.max() - s.min(), axis1) # 返回一个 Series值为 DataFrame 每一行的最大值与最小值之差九、Series 字符串操作str 访问器“与 Python 字符串方法相似但它们是向量化的能高效地作用于整个 Series”PPT 原话代码作用s.str.count(pattern)返回每个元素中匹配计数的整数 Seriess.str.get(index)返回每个元素在给定索引处的数据s.str.join(sep)返回每个元素被拼接后的 Seriess.str.title()将每个单词的首字母大写s.str.len()返回每个元素长度的 Seriess.str.cat()将元素拼接为一个字符串s.str.partition(sep)在分隔符第一次出现处拆分字符串s.str.slice(start, stop, step)对每个字符串切片s.str.replace(pat, rep)用正则替换每个字符串中的模式s.str.isalnum()检查每个元素是否全是字母数字十、全局选项Options五个函数与 display.* 配置速查表把 pandas 的“全局行为控制”列为独立一节pandas 提供若干 option用于全局控制其行为、显示等选项可通过pd.options.option_name查询和设置例如pd.options.display.max_rows 20 # 将 display.max_rows 设为 20选项管理五函数PPT 第三页“Functions”小节代码作用get_option(option)获取指定选项的值set_option(option)设置指定选项的值reset_option(options)将所给选项重置为默认值describe_option(options)打印所给选项的描述option_context(options)在临时选项设置下执行代码执行完毕后自动还原常用显示选项PPT“Frequently Used Options”小节的完整清单选项含义display.max_rows美观打印时显示的最大行数display.max_columns美观打印时显示的最大列数display.expand_frame_repr控制 DataFrame 表示是否跨页展开display.large_repr控制超过最大行/列数的 DataFrame 是被截断truncated还是摘要显示summarizeddisplay.precision输出显示的小数精度display.max_colwidth列的最大宽度超长的单元格会被截断display.max_info_columns调用info()后显示的最大列数display.chop_threshold显示 Series/DataFrame 时把接近零的值舍入为零的阈值display.colheader_justify控制列标题的对齐方式源码佐证上述display.*选项在 pandas/_config/display.py 中通过cf.register_option(...)逐一注册文件以with cf.config_prefix(display):组织选项查询/设置/临时上下文的机制实现于 pandas/_config/config.py其中option_context定义见 config.py。因此pd.options.display.max_rows 20本质是向该注册表写入值而option_context可作为上下文管理器在代码块内临时改值、出块即还原。十一、绘图Plottingdf.plot 家族PPT 第三页将绘图分为“基础图型”与“参数调整”两组基础图型代码作用df.plot()为 DataFrame 绘制折线图df.plot.scatter(xw, yh)散点图df.plot.hist()直方图df.plot.pie()饼图df.plot.bar()柱状图df.plot.boxplot()箱线图df.plot.area()面积图df.plot.hexbin()六边形分箱图hexbin常用参数代码作用df.plot(subplotsTrue)每个列绘制到独立的子图df.plot(titleGraph of A against B)设置图标题df.plot(stackedTrue)将各列数据堆叠仅 bar、barh、area 有效df.plot(alpha0.5)透明度设为 50%df.plot(cumulativeTrue)生成累积图df.plot(bins30)设置直方图的分组箱数PPT 还特别强调参数可组合例如对 3 列 DataFrame 各画一条独立折线并分别设标题df.plot(subplotsTrue, title[col1, col2, col3]) # 标题列表中第一个字符串对应最左侧第一列的图十二、输入/输出Input/Output速查表给出的读写对照如下代码作用df pd.read_csv(filepath)从 CSV 文件读入df pd.read_html(filepath)从 HTML 文件读入df pd.read_excel(filepath)从 xls及相关格式文件读入df pd.read_sql(filepath)从 SQL 读入pd.read_clipboard()从系统剪贴板读入文本df.to_parquet(filepath)写出为 Parquet 文件df.to_feather(filepath)写出为 Feather 文件df.to_hdf(filepath)写出为 HDF 文件df.to_clipboard()把对象复制到系统剪贴板PPT 对输入输出做了重要区分常见的输入格式CSV、JSON、HTML偏人类可读常见的输出格式feather、parquet、HDF则更偏向性能与可扩展性的优化。这些read_*/to_*的实现在 pandas/io/ 目录下按格式分文件组织如 pandas/io/parsers/ 处理 CSV 解析、pandas/io/parquet.py、pandas/io/pytables.py 等可作为深入阅读的入口。使用建议与延伸阅读打印随身查按 doc/cheatsheet/README.md 的说法直接用 Pandas_Cheat_Sheet.pptx 打开后可“另存为 PDF”重新排版打印三个语言版本中英文版内容最全需要最全条目时以英文版为准进阶README 提到 DataCamp 维护的 Pandas Cheat Sheet 提供 PDF / Google Colab / Streamlit 三种形态可作为交互式补充README 附有对应入口本文不转载外链深入源码本文各节引用的实现落点——melt/pivot/concat在 pandas/core/reshape/选项注册在 pandas/_config/display.py 与 pandas/_config/config.pyI/O 在 pandas/io/——配合 doc/source/user_guide/ 下的官方用户指南可以把速查表上的一条命令展开成完整的手册式讲解。【免费下载链接】pandasFlexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more项目地址: https://gitcode.com/gh_mirrors/pa/pandas创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

EGM96模型校正DEM高程基准:从原理到实操的完整指南

EGM96模型校正DEM高程基准:从原理到实操的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/18 20:13:16 阅读更多 →
ArcEngine与C#开发地震影响分析系统:C/S架构与空间分析实战

ArcEngine与C#开发地震影响分析系统:C/S架构与空间分析实战

简介:一份基于GIS技术的地震影响分析信息系统毕业设计论文,面向地理信息科学、测绘、计算机等相关专业学生及ArcEngine二次开发初学者。文档以Visual C#为开发语言,结合ArcEngine 9.3组件和SQL Server 2005数据库,系统阐述地震信息…

2026/9/18 20:13:16 阅读更多 →
Security-101 零信任深度解析:从「信任但验证」到「永不信任,始终验证」的安全架构指南

Security-101 零信任深度解析:从「信任但验证」到「永不信任,始终验证」的安全架构指南

Security-101 零信任深度解析:从「信任但验证」到「永不信任,始终验证」的安全架构指南 【免费下载链接】Security-101 8 Lessons, Kick-start Your Cybersecurity Learning. 项目地址: https://gitcode.com/GitHub_Trending/se/Security-101 零信…

2026/9/18 20:12:15 阅读更多 →

最新新闻

无线局域网抓包实战:监听模式与Wireshark分析指南

无线局域网抓包实战:监听模式与Wireshark分析指南

简介:一份针对802.11协议的无线局域网抓包实验报告,专为网络工程、无线通信方向的学生及初学者设计,用于理解无线局域网中的帧格式与抓包分析方法。实验基于Ubuntu 10.04与Wireshark工具,从环境搭建到抓包实操均有详细记录&#x…

2026/9/18 20:54:35 阅读更多 →
Windows Server 时间同步配置与排查:W32Time/NTP/域环境

Windows Server 时间同步配置与排查:W32Time/NTP/域环境

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/18 20:54:35 阅读更多 →
树莓派Docker Compose全家桶:一键部署容器化服务器实战

树莓派Docker Compose全家桶:一键部署容器化服务器实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/18 20:54:35 阅读更多 →
Scratch渲染瓶颈深度解析与零卡顿优化实战

Scratch渲染瓶颈深度解析与零卡顿优化实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/18 20:54:35 阅读更多 →
Win10开机提速别乱来:真正有效的优化项都在这

Win10开机提速别乱来:真正有效的优化项都在这

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/18 20:54:35 阅读更多 →
Kyanos 快速上手指南:基于 eBPF 的网络流量分析工具安装、运行与常见问题排查

Kyanos 快速上手指南:基于 eBPF 的网络流量分析工具安装、运行与常见问题排查

Kyanos 快速上手指南:基于 eBPF 的网络流量分析工具安装、运行与常见问题排查 【免费下载链接】kyanos Kyanos is a networking analysis tool using eBPF. It can visualize the time packets spend in the kernel, capture requests/responses, makes troubleshoo…

2026/9/18 20:53:34 阅读更多 →

日新闻

Matlab手写逻辑回归:从数学原理到多变量概率预测模型实现

Matlab手写逻辑回归:从数学原理到多变量概率预测模型实现

很多朋友第一次看到"逻辑回归"这四个字,第一反应就是——这玩意儿是个回归模型吧?我当年也是在Matlab里跑完一段代码,看着输出的0.73、0.86这种概率值,才回过神来:这家伙其实是披着回归外衣的分类神器&#…

2026/9/18 0:00:28 阅读更多 →
高值医用耗材研报PDF:用Python完成字段抽取、清洗与趋势预测

高值医用耗材研报PDF:用Python完成字段抽取、清洗与趋势预测

简介:这份报告是2023-2028年高值医用耗材行业调研及发展前景趋势预测报告,面向医疗器械企业管理者、投资机构、行业研究人员及关注政策变化的从业者,用于把握行业监管动向、市场格局与未来趋势。报告以PDF格式呈现,共1个文件、整体…

2026/9/18 0:00:28 阅读更多 →
三维高斯场赋能世界模型:几何语义蒸馏与机器人决策实战

三维高斯场赋能世界模型:几何语义蒸馏与机器人决策实战

先把我自己的背景交代一下:我之前在搞具身智能和机器人导航相关的项目,很长一段时间里都被“环境表示”这件事卡着。传统做法是用点云或者网格做几何建模,语义信息另外再跑分割模型,两套东西各管各的,时间一长就会发现…

2026/9/18 0:00:28 阅读更多 →

周新闻

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验 【免费下载链接】ai The AI Toolkit for TypeScript. From the creators of Next.js, the AI SDK is a free open-source library for building AI-powered applications and ag…

2026/9/16 19:03:19 阅读更多 →
Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化

Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化

Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化 【免费下载链接】refine A React Framework for building internal tools, admin panels, dashboards & B2B apps with unmatched flexibility. 项目地址: https://gitcode.com/GitH…

2026/9/17 7:57:36 阅读更多 →
Flutter应用改名全指南:从Android到iOS的配置与工具实践

Flutter应用改名全指南:从Android到iOS的配置与工具实践

刚接一个外包项目时,甲方要求把工程里临时用的应用名改成正式产品名。我本来觉得“改名”这种小事,打开配置文件改一行不就完了?结果真动手才发现,Flutter项目里“应用名称”根本不是一处配置,而是一整套散落在 Androi…

2026/9/17 10:19:14 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/16 22:31:27 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/15 21:39:18 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/16 22:32:59 阅读更多 →