在数据科学和大数据开发领域Pandas无疑是最璀璨的明星工具之一。它底层基于NumPy构建提供了高性能、易用的数据结构和丰富的数据分析函数极大地简化了数据清洗、转换与统计分析的开发流程。官方网站https://pandas.pydata.org环境依赖底层依赖 NumPy 进行高效的高维数组与矩阵运算⚠️环境准备注意在 Python 环境中使用pip安装而非 npmpipinstallpandas 什么是 DataFrame 与 SeriesPandas 的世界主要由两大核心数据结构支撑DataFrame表格型的数据结构就像一张 Excel 表格或 SQL 表既有行索引Index也有列索引Columns。Series一维标记数组就像表格中的单独一列。核心关系DataFrame 是由多个具有相同索引的 Series 组成的二维容器从 DataFrame 中抽取任意一列拿到的就是一个 Series。 实战案例统计班级各科成绩业务需求统计某班级学员在“语文”、“数学”、“英语”三门课程中的最高分、最低分与平均分。代码实现importpandasaspd# 1. 构造 DataFrame 数据集dfpd.DataFrame([{姓名:张三,语文:85,数学:92,英语:78},{姓名:李四,语文:78,数学:88,英语:95},{姓名:王五,语文:92,数学:96,英语:89},{姓名:赵六,语文:85,数学:90,英语:90},{姓名:孙七,语文:72,数学:59,英语:66},{姓名:周八,语文:80,数学:76,英语:68},])# 2. 统计计算调用单列 Series 聚合函数print(f语文 - 最高分:{df[语文].max()}, 最低分:{df[语文].min()}, 平均分:{df[语文].mean():.2f})print(f数学 - 最高分:{df[数学].max()}, 最低分:{df[数学].min()}, 平均分:{df[数学].mean():.2f})print(f英语 - 最高分:{df[英语].max()}, 最低分:{df[英语].min()}, 平均分:{df[英语].mean():.2f}) 进阶小技巧如果想快速查看所有数值列的统计指标可以直接使用df.describe()计数、均值、极值、分位数一览无余️ 核心进阶DataFrame 的常用构建方式在实际项目中数据来源多种多样Pandas 提供了极具弹性的构造方式方式 1列表嵌套字典按行解析每个字典代表一行数据字典的 key 自动作为列名df1pd.DataFrame([{姓名:张三,语文:85,数学:92,英语:78},{姓名:李四,语文:78,数学:88,英语:95},{姓名:王五,语文:92,数学:96,英语:89}])方式 2字典嵌套列表按列解析最推荐每个 key 是列名对应的 list 为该列的所有取值df2pd.DataFrame({姓名:[张三,李四,王五],语文:[85,78,92],数学:[92,88,96],英语:[78,95,89]})方式 3元组列表 columns 参数传入二维元组列表并通过columns参数定义表头df3pd.DataFrame([(张三,85,92,78),(李四,78,88,95),(王五,92,96,89)],columns[姓名,语文,数学,英语])方式 4二维列表 columns index在定义数据和列名的同时显式指定行索引indexdf4pd.DataFrame([[张三,85,92,78],[李四,78,88,95],[王五,92,96,89]],columns[姓名,语文,数学,英语],index[a,b,c])️ 核心进阶Series 的常用构建方式Series 是一维标记数组常见构建方式如下importpandasaspd# 1. 普通列表构建默认自动生成 0, 1, 2... 数字索引s1pd.Series([10,20,30,40,50])# 2. 元组构建并指定自定义标签索引indexs2pd.Series((10,20,30,40,50),index[a,b,c,d,e])# 3. 字典构建字典 key 自动转化为 Series 的 indexs3pd.Series({a:10,b:20,c:30,d:40,e:50})# 4. 从已有的 DataFrame 中抽取某列s4df1[语文]s5df1[数学] 必备速查DataFrame 与 Series 常见属性熟练掌握基础属性能让你在处理数据清洗和维度变换时更加游刃有余属性名称作用说明适用对象示例输出xx.shape获取数据维度行数, 列数DataFrame / Series(6, 4)xx.columns获取所有列名/列标签DataFrame 特有Index([姓名, 语文, ...])xx.index获取行标签/行索引DataFrame / SeriesRangeIndex(start0, stop6)xx.values获取纯数据底层表示NumPy ndarrayDataFrame / Seriesarray([[...], [...]])xx.dtype获取单列的数据类型Series 特有int64/objectxx.dtypes获取各列对应的数据类型DataFrame 特有各字段类型列表xx.size获取数据元素的总个数行 × 列DataFrame / Series24示例代码# 查看 DataFrame 的维度与字段名print(df.shape)# (6, 4)print(df.columns)# Index([姓名, 语文, 数学, 英语], dtypeobject)# 查看 Series 的类型与值print(df[语文].dtype)# int64print(df[语文].values)# [85 78 92 85 72 80] 总结与回顾基本模型Pandas 的基石是Series一维序列和DataFrame二维表格。统计计算借助.max()、.min()、.mean()等聚合函数能秒级完成批量统计。数据感知通过.shape查维度、.columns查表头、.index查索引、.values探底层是数据探查的第一步。