学Python数据分析,Pandas是绕不开的核心库,也是数据处理、职场办公、数据分析岗的必备技能。
但很多新手刚上手就犯难:方法太多记不住,英文术语看不懂,写代码总是卡壳,好不容易敲完还报错...
别担心!今天整理了Pandas高频核心方法,每个都标注英文全称+中文释义+可直接运行代码,零基础也能复制即用,看完就能上手做数据处理,建议直接收藏!
数据分析第一步,先学会创建/读取数据,这是入门基础中的基础。
1. DataFrame
- 英文:DataFrame
- 中文释义:pandas核心二维数据表,类似Excel的行列结构化数据,是最常用的数据存储格式
python
# 导入pandas库,简写为pd
import pandas as pd
# 构建基础数据表
data = {
"姓名": ["张三", "李四", "王五"],
"年龄": [23, 25, 27],
"薪资": [8000, 10000, 12000]
}
df = pd.DataFrame(data)
# 打印查看数据
print(df)
2. read_csv
- 英文:read_csv
- 中文释义:读取本地CSV格式文件,职场处理表格数据高频使用
python
# 括号内填写文件路径,相对路径/绝对路径均可
# df = pd.read_csv("data.csv")
# 查看读取后的数据
# print(df)
拿到数据先看整体情况,不用逐行翻阅,几行代码搞定数据探查。
3. head()
- 英文:head
- 中文释义:查看数据前N行,默认显示前5行,避免数据过多刷屏
python
# 查看前2行
df.head(2)
4. tail()
- 英文:tail
- 中文释义:查看数据末尾N行,默认显示后5行
python
# 查看最后1行
df.tail(1)
5. info()
- 英文:info
- 中文释义:查看数据完整信息,包含数据类型、缺失值、行列总数
python
df.info()
6. describe()
- 英文:describe
- 中文释义:数值列统计描述,自动计算均值、最值、分位数、标准差
python
df.describe()
7. shape
- 英文:shape
- 中文释义:返回数据维度,格式为(行数, 列数)
python
print("数据行数、列数:", df.shape)
数据筛选是日常操作,学会loc、iloc,再也不用手动找数据。
8. loc[]
- 英文:loc (location)
- 中文释义:标签索引,按行名、列名精准取值
python
# 提取第0行,姓名列的数据
print(df.loc[0, "姓名"])
9. iloc[]
- 英文:iloc (integer location)
- 中文释义:数字索引,按行列下标取值,从0开始计数
python
# 提取第0行第1列的数据
print(df.iloc[0, 1])
10. filter
- 英文:filter
- 中文释义:按列名/行名筛选指定数据,保留目标字段
python
# 只保留姓名、年龄两列
df_filter = df.filter(items=["姓名", "年龄"])
print(df_filter)
原始数据总有缺失值,3个方法快速处理,保证数据规范。
11. isnull()
- 英文:isnull
- 中文释义:判断数据是否为空值,返回布尔矩阵(空值为True)
python
# 查看所有缺失值位置
print(df.isnull())
12. fillna()
- 英文:fillna
- 中文释义:填充缺失值,可指定填充数值
python
# 用0填充所有缺失值
df_fill = df.fillna(0)
13. dropna()
- 英文:dropna
- 中文释义:删除包含缺失值的行/列,保证数据完整性
python
# 删除有缺失值的行
df_drop = df.dropna()
数据重复、排序混乱?两行代码轻松规整化。
14. drop_duplicates()
- 英文:drop_duplicates
- 中文释义:删除数据中的重复行,保留唯一数据
python
df_unique = df.drop_duplicates()
15. sort_values()
- 英文:sort_values
- 中文释义:按指定列数据排序,ascending=False为降序
python
# 按薪资列降序排序
df_sort = df.sort_values(by="薪资", ascending=False)
print(df_sort)
需要新增计算列、修改列数据,一个方法搞定。
16. assign
- 英文:assign
- 中文释义:新增数据列,不修改原数据表,避免数据错乱
python
# 新增岗位列
df_new = df.assign(岗位=["运营", "开发", "产品"])
print(df_new)
分组统计、多维度计算,数据分析核心操作。
17. groupby()
- 英文:groupby
- 中文释义:按指定字段分组,搭配统计函数使用
python
# 按年龄分组,计算各组平均薪资
df_group = df.groupby("年龄")["薪资"].mean()
print(df_group)
18. agg()
- 英文:aggregate (agg)
- 中文释义:批量聚合运算,一次性实现求和、均值、最大值等
python
# 对薪资列同时计算求和、均值、最大值
result = df["薪资"].agg(["sum", "mean", "max"])
print(result)
多个表格需要合并关联,替代Excel复杂vlookup函数。
19. concat()
- 英文:concat (concatenate)
- 中文释义:数据表拼接,可上下合并、左右合并
python
df1 = df
df2 = df
# 上下拼接两个表,忽略原索引
df_concat = pd.concat([df1, df2], ignore_index=True)
print(df_concat)
20. merge()
- 英文:merge
- 中文释义:关联合并,类似SQL的join,按共同字段匹配数据
python
# 构建关联表
df_city = pd.DataFrame({"姓名":["张三", "李四"], "城市":["北京", "上海"]})
# 按姓名字段合并两个表
df_merge = pd.merge(df, df_city, on="姓名")
print(df_merge)
简单统计需求,直接调用内置函数。
21. sum() / mean() / max() / min()
- 英文:sum / mean / maximum / minimum
- 中文释义:求和、求平均值、求最大值、求最小值
python
# 薪资列求和
print("薪资总和:", df["薪资"].sum())
# 薪资列求均值
print("平均薪资:", df["薪资"].mean())
复杂数据处理,用这两个方法实现个性化需求。
22. apply()
- 英文:apply
- 中文释义:将自定义函数批量作用于行/列,灵活处理数据
python
# 定义判断薪资等级的函数
def salary_level(salary):
if salary >= 10000:
return "高薪"
else:
return "普通"
# 批量应用函数,新增等级列
df["薪资等级"] = df["薪资"].apply(salary_level)
print(df)
23. map()
- 英文:map
- 中文释义:单列字典映射、批量替换数值,适合分类数据转换
python
# 定义映射规则
name_map = {"张三": "小张", "李四": "小李", "王五": "小王"}
# 批量替换姓名
df["昵称"] = df["姓名"].map(name_map)
print(df)
Pandas不用死记硬背所有方法,先吃透这23个高频核心方法,足以应对80%的日常数据处理场景。
学习数据分析没有捷径,多看多练多实操,把这些代码直接复制运行,改改数据就能上手,慢慢就能形成自己的代码逻辑。
后续会持续更新Pandas进阶技巧、实战案例、避坑指南,关注我,零基础也能轻松搞定Python数据分析!
#Python#pandas#数据分析#Python学习#编程干货#人工智能#