想入门 Python 数据分析的朋友是不是总遇到这些问题?看了一堆基础语法教程,面对表格数据还是不知道怎么下手;好不容易装好了 Pandas 库,写个
pd.read_csv()却报错 “文件找不到”;处理数据时想算个平均分,结果把文本当数字算,越算越乱。别着急,兔子哥当初学数据分析时,光是搞懂 “Series 和 DataFrame 的区别” 就卡了好几天,第一次用 Pandas 处理 Excel 数据还把列名写错,折腾半天才发现问题。今天就从基础语法讲到 Pandas 实战案例,帮新手快速上手 Python 数据分析,新手如何快速入门数据分析?一起往下看吧!一、数据分析必备基础语法,这 3 个知识点必须吃透
学数据分析不用精通所有 Python 语法,但这几个核心知识点一定要会,不然连数据都处理不了。
- 变量和数据类型:数据的 “收纳盒”
变量就是给数据起名字,方便后续调用。比如分析成绩时,把分数存起来:math_score = 95 # 整数,存分数、人数这些没小数的 avg_score = 88.5 # 浮点数,存平均分、百分比这些带小数的 student_name = "小明" # 字符串,存名字、类别这些文本
数据类型不用死记,用表格对比更清楚,这些是数据分析最常用的:
| 数据类型 | 作用 | 例子 | 数据分析场景 |
|---|---|---|---|
| 整数(int) | 存没有小数的数字 | 20、50 | 人数、次数统计 |
| 浮点数(float) | 存带小数的数字 | 92.5、3.14 | 平均分、销售额 |
| 字符串(str) | 存文本 | "张三"、"语文" | 姓名、科目名称 |
| 列表(list) | 存多个有序数据 | [90, 85, 95] | 一组成绩、多个名称 |
| 字典(dict) | 存键值对数据 | {"name": "小红", "score": 90} | 单条记录、配置信息 |
有朋友会问:“列表和字典怎么选?” 简单说,列表像排队的队伍(有顺序,按位置取),适合存一组同类数据,比如全班成绩;字典像贴标签的抽屉(按名字取),适合存单条记录的详细信息,比如一个学生的各科成绩。
- 循环和条件语句:数据的 “筛选器”
分析数据时经常需要重复计算或筛选数据,这时候循环和条件语句就派上用场了。
- 循环:重复做一件事,比如计算列表里所有成绩的总和:
scores = [85, 92, 78, 90] total = 0 for score in scores: # 遍历列表里的每个成绩 total = total + score print("总分:", total) - 条件语句:筛选符合条件的数据,比如找出 90 分以上的成绩:
for score in scores: if score >= 90: print(f"优秀成绩:{score}") else: print(f"待提升成绩:{score}")
- 函数:重复操作的 “快捷键”
把常用的分析步骤写成函数,下次直接调用,不用重复写代码。比如写个计算平均分的函数:
`def calculate_average(numbers):
total = sum(numbers)
return total / len(numbers)
调用函数算成绩平均分
avg = calculate_average(scores)
print ("平均分:", avg)`
二、Pandas 实战:数据分析的 “瑞士军刀”,3 步搞定表格处理
Pandas 是 Python 数据分析的核心库,就像专门处理表格的工具,学会这几步,基本数据操作就没问题了。
- 安装和导入:先把 “工具” 备好
第一次用 Pandas 要先安装,打开命令提示符(或终端)输:pip install pandas openpyxl# openpyxl 用来处理 Excel 文件
导入时习惯简写,后面用起来方便:
import pandas as pd # 约定俗成用pd当简写- 读取数据:把表格 “装进” Python
最常用的是读 CSV 和 Excel 文件,这一步新手最容易报错,记住路径要写对:
`# 读 CSV 文件(逗号分隔的表格)
df = pd.read_csv ("销售数据.csv")
读 Excel 文件
df = pd.read_excel ("成绩表.xlsx")`
如果文件和你的代码在同一个文件夹,直接写文件名就行;不在的话要写完整路径,比如
"D:/数据分析/销售数据.csv"。要是报错 “文件不存在”,先检查文件名是不是写错了,或者文件是不是放错了地方。- 基础操作:看数据、改数据、算指标
- 看数据:用
head()看前几行,info()看基本信息:print(df.head()) # 默认显示前5行,快速了解数据结构 print(df.info()) # 看列名、数据类型、有没有缺失值 - 处理缺失值:数据里的空值会影响分析,要么删掉要么填充:
`df_clean = df.dropna () # 删掉有缺失值的行
或者用平均值填充缺失值(比如填充数学成绩)
df ["数学"] = df ["数学"].fillna (df ["数学"].mean ())`
- 算指标:求平均分、最大值,Pandas 直接有现成函数:
print("数学平均分:", df["数学"].mean()) print("语文最高分:", df["语文"].max()) print("各科目平均分:\n", df.mean(numeric_only=True)) # 算所有数值列的平均分 - 分组分析:按类别统计,比如按 “班级” 分组算平均分:
class_avg = df.groupby("班级")["数学"].mean() print("各班数学平均分:\n", class_avg)
三、实战案例:销售数据分析,从数据到结论全流程
用一个销售数据案例,看看完整的分析流程怎么操作,代码可以直接抄着改。
- 案例目标:分析某店铺月度销售数据,找出热销商品、销售额趋势和地区销售情况。
- 数据准备:“销售数据.csv” 包含列:日期、商品名称、地区、销售额、销量。
- 分析步骤:
python
import pandas as pdimport matplotlib.pyplot as plt # 可视化用# 1. 读取数据 df = pd.read_csv("销售数据.csv")# 2. 数据清洗 # 处理缺失值:用0填充销售额缺失(假设没销售) df["销售额"] = df["销售额"].fillna(0)# 转换日期格式(方便按日期分析) df["日期"] = pd.to_datetime(df["日期"])# 3. 基础分析 # 热销商品:按商品名称分组算总销量 hot_products = df.groupby("商品名称")["销量"].sum().sort_values(ascending=False)print("热销商品Top3:\n", hot_products.head(3))# 销售额趋势:按日期分组算每日销售额 daily_sales = df.groupby("日期")["销售额"].sum()# 画折线图看趋势 plt.figure(figsize=(10, 5))daily_sales.plot(kind="line")plt.title("每日销售额趋势")plt.show()# 地区销售占比:按地区分组算总销售额 region_sales = df.groupby("地区")["销售额"].sum()# 画饼图看占比 plt.figure(figsize=(8, 8))region_sales.plot(kind="pie", autopct="%1.1f%%")plt.title("各地区销售额占比")plt.show()- 避坑指南:
- 中文乱码:画图时中文显示方框,加
plt.rcParams["font.family"] = ["SimHei", "WenQuanYi Micro Hei"]。 - 数据类型错误:算销售额时提示 “无法相加”,检查列是不是字符串类型,用
df["销售额"] = df["销售额"].astype(float)转换。 - 分组后索引问题:
groupby后结果是 Series,用reset_index()转成 DataFrame 更方便后续处理。
四、自问自答:数据分析新手常问的 3 个问题
- “为什么用 Pandas 而不是 Excel?Excel 不是更简单吗?”
Excel 适合小数据量、手动操作,但数据量大(比如 10 万行)或需要重复分析时,Pandas 更高效。比如每月更新销售数据,用 Pandas 写好脚本,下次直接运行就能出结果,不用重复点击鼠标,而且代码可以保存复用,不容易出错。 - “数学不好能学 Python 数据分析吗?会不会很吃力?”
完全可以!基础数据分析用的都是加减乘除、平均分这些简单计算,Pandas 都帮你封装好了,不用自己写公式。重点是理解业务问题,比如 “为什么这个月销售额下降”,而不是复杂的数学公式。兔子哥数学也一般,照样能做基础数据分析。 - “学完基础后,怎么提升数据分析能力?”
多练真实数据!可以去 Kaggle、阿里云天池下载公开数据集,比如电商销售数据、用户行为数据,试着分析 “哪些商品卖得好”“用户喜欢在什么时间下单”。分析完后写个简单报告,说明你的发现和建议,这样能力提升最快。
结尾心得
Python 数据分析入门不难,关键是把基础语法和 Pandas 操作结合起来用。兔子哥的经验是,别光看教程不动手,拿到数据先试着用
head()看看结构,用mean() groupby()算几个指标,遇到报错别慌,大部分问题都是路径错了、数据类型不对这些小问题。刚开始慢没关系,练几个数据集后就会越来越顺。记住,数据分析的核心是解决问题,不是写复杂代码,能从数据中找到有用的结论,就是好的分析。多做实战,你会发现 Python 数据分析真的能帮你从数据中看到很多以前没注意的规律!版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~