游乐游手机版
首页/科技数码/文章详情

Python高效处理CSV文件:10倍提升打工人的数据效率

时间:2026-04-01 13:55
学会用 Python 处理 CSV,五分钟可以搞定季度的销售数据整理。今天就把我的保命技巧分享给你。 临近下班。老板突然发来一个 50MB 的 CSV 文件: "把这个季度的销售数据整理一下,按地区汇

学会用 Python 处理 CSV,五分钟可以搞定季度的销售数据整理。今天就把我的保命技巧分享给你。

临近下班。

老板突然发来一个 50MB 的 CSV 文件:"把这个季度的销售数据整理一下,按地区汇总,明天早上给我。"

我打开 Excel,转圈转了 3 分钟才加载完。筛选、排序、透视表……折腾到晚上 9 点,眼睛都快瞎了。

那一刻我发誓:一定要学会用 Python 处理 CSV!

现在,同样的任务,我 5 分钟搞定,还能准时下班去吃火锅。

今天就把我的保命技巧分享给你。

一、读取 CSV,别再只会用 open() 了

很多人第一反应是这样:

with open('data.csv', 'r') as f: data = f.readlines()

别这么干!遇到中文编码、特殊字符、空值,你会哭的。

直接用 pandas,一行搞定:

import pandas as pddf = pd.read_csv('data.csv', encoding='utf-8-sig')

关键参数记住这 3 个:

encoding='utf-8-sig':解决中文乱码(特别是 Excel 导出的文件)dtype={'列名': str}:防止数字前面的 0 被吃掉(比如工号 00123)parse_dates=['日期列']:自动把日期列转成 datetime 类型

二、数据清洗,这些坑我替你踩过了

坑 1:空值处理

# 查看每列有多少空值print(df.isnull().sum())# 填充空值(比如销售额填 0)df['销售额'] = df['销售额'].fillna(0)# 或者直接删除空值行df = df.dropna()

坑 2:重复数据

# 检查重复print(df.duplicated().sum())# 删除重复df = df.drop_duplicates()

坑 3:数据类型不对

# 强制转换df['金额'] = pd.to_numeric(df['金额'], errors='coerce')df['日期'] = pd.to_datetime(df['日期'])

说实话,我刚学的时候在这些坑里摔了无数次。有一次因为没处理空值,算出来的平均值差了 10 倍,被老板骂了一下午……(别问我怎么知道的)

三、数据分析,这才是 pandas 的精髓

按地区汇总销售额:

# 分组求和result = df.groupby('地区')['销售额'].sum().reset_index()

找出销售额前 10 的产品:

top10 = df.nlargest(10, '销售额')

计算同比增长:

df['同比增长'] = df['今年销售额'] / df['去年销售额'] - 1df['同比增长'] = df['同比增长'].apply(lambda x: f'{x:.2%}')

讲真,学会 groupby 之后,我发现以前用 Excel 透视表简直是原始人。

四、导出结果,格式要对

# 导出为 CSV(不含索引)result.to_csv('汇总结果.csv', index=False, encoding='utf-8-sig')# 导出为 Excel(更美观)result.to_excel('汇总结果.xlsx', index=False)

注意:用index=False不然会多出一列索引,老板看了会问"这是什么鬼"。

五、大文件怎么办?

如果 CSV 有几个 G 那么大,一次性读入会内存爆炸。

解决方案:分块读取:

chunks = pd.read_csv('huge_file.csv', chunksize=10000)for chunk in chunks: # 处理每一块 process(chunk)

六、最后总结一下

读取:用 pandas 的read_csv,注意编码和 dtype清洗:处理空值、重复、数据类型分析:groupby 是神器,多用导出:记得index=False大文件:分块读取

说实话,这些技巧看起来简单,但都是我加班加出来的经验。

学会之后,你真的可以准时下班。

来源:https://www.51cto.com/article/839620.html
上一篇ES2026史诗特性:告别try...finally,资源管理逻辑减半 下一篇4.9mm超薄设计 传音MWC 2026将展出模块化手机
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
年国家能源局充换电服务业用电量增速48.8%
科技数码 · 2026-06-29

年国家能源局充换电服务业用电量增速48.8%

2025年全社会用电量达103682亿千瓦时,同比增长5 0%。充换电服务业用电增速高达48 8%,信息传输与软件服务业增速17 0%。第三产业和居民用电对增长贡献率合计占一半。中国成为全球首个年度用电量超10 4万亿千瓦时的国家。

追风者 GLACIER ONE 360 S25 液冷散热器新品上市 联体风扇售价429元
科技数码 · 2026-06-29

追风者 GLACIER ONE 360 S25 液冷散热器新品上市 联体风扇售价429元

追风者冰川360S25液冷散热器售价429元,三联一体风扇便捷安装,冷头小体积纯铜底座噪音18dB,风扇转速300-2000RPM、风量75CFM、静压2 96mmAq,五年质保漏液包赔。

三星Galaxy Watch8用户反馈谷歌后台组件异常
科技数码 · 2026-06-29

三星Galaxy Watch8用户反馈谷歌后台组件异常

三星GalaxyWatch8、Watch5Pro、Watch6及Watch7用户反映,GooglePlayServices后台耗电异常,电量占比最高达99 97%,远超正常水平,严重影响续航。目前故障原因不明,谷歌尚未发布官方声明。

罗永浩批苹果iOS 27创新不足 盼新CEO改进
科技数码 · 2026-06-29

罗永浩批苹果iOS 27创新不足 盼新CEO改进

罗永浩批评苹果iOS27创新不足,称仅有双iPhone同号、音量分离等数十项细节改进,认为库克时代缺乏突破性创新,股市虽好但消费者只能被迫接受挤牙膏式升级。

年国产车出口710万辆,两家车企销量破百万
科技数码 · 2026-06-29

年国产车出口710万辆,两家车企销量破百万

2025年国产汽车出口总量达710万辆,同比增长21%。奇瑞以134万辆居首,比亚迪105万辆次之,上汽乘用车出口占比60%最高,长城出口51万辆。吉利、长安等主流品牌同步增长,小鹏、零跑等新兴品牌海外拓展加速。