当我们遇到一个超大的csv数据文件的时候,双击打开是不现实的。即使打开csv,只能看到104万行的数据,后面都是隐藏的,所以打开也是没有意义的。如果不打开,又无法查看到表的数据结构,就无法进行下一步的工作,比如数据筛选。
一、大数据处理工具
对于超百万行,甚至更大的数据,我推荐以下几种工具:
1、Python:pandas在升级为2.0版本之后,对csv处理速度更快了。以前被人诟病的慢有所改进,可以作为首选。
2、SQL或者Access,SQL可视化好,可以清楚地看到数据结构与内容,速度也非常快,但需要简单学习一下SQL语言。
3、power query,excel自带工具,简单快捷,不需要额外生产力。但用起来处理数据的感觉有些吃力,不如前两个。
二、Python处理大数据技巧
1、读取时不要轻易使用encoding参数
此参数对应两个常用值,gbk、utf-8,对应下面截图中两种格式,如果格式不对会报错误。意思为:'gbk’编解码器无法解码位置2中的字节0xbf:非法的多字节序列。
如果是普通数据量较小的表格,可以直接调用参数,如果表格很大,打不开的情况下,更别说改完格式另存为了,所以尽量先不填此参数(但一般默认都是gbk)
2、异形表头
在没有打开表的情况下,我们无法得知表格是否为真正的二维表格,例如下面这种情况,读取会报错,意思是识别到第七行有21列。
因为当读取到第四行和第五行的时候,会默认只有一列表格,而到第7行的时候,却又变成了21列,故pandas判断这不是一个正常二维数据结构。
为了避免此种情况。要利用读取数据的参数delimiter=“\t”,这样数据就被强制转换成一列了,你就能看到你想要读取的数据在第几列了,再将此参数删掉,再用参数header=2就可以搞定了。
data = pd.read_csv(r"C:\Users\ZWD\Desktop\测试\示例.csv",dtype_backend="pyarrow",``delimiter="\t")
综上所述:完整代码如下
``data = pd.read_csv(file,dtype_backend="pyarrow",header=2)``print(data.head(10))
三、内存溢出
当读取特别大的表时,会提示内存溢出的问题,csv格式较少遇到,xlsx格式可能较多,可以使用下面的方法进行尝试。
1. 分块读取文件
我们可以将文件分成多个块,逐块读取,避免加载整个文件。例如:
chunksize = 100000``for df in pd.read_excel(filez,sheet_name=sheet,chunksize=chunksize)``# 对分块进行处理
2. 指定行数范围读取
可以只读取文件的某些行,避免读取不需要的行。例如:
df = pd.read_excel(file,sheet_name=sheet,skiprows=100000,nrows=100000)` `# 跳过前10万行,读取50万行
3. 选择需要的列读取
通过usecols参数只选择需要的列,避免读取无用的数据列。
df = pd.read_excel(file,sheet_name=sheet,usecols=["col1","col2","col3"])``# 读取想要阿列
题外话
感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。
👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)文章来源:https://www.toymoban.com/news/detail-839827.html
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
工具都帮大家整理好了,安装就可直接上手!
三、最新Python学习笔记
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、Python视频合集
观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试宝典
简历模板
👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)
若有侵权,请联系删除文章来源地址https://www.toymoban.com/news/detail-839827.html
到了这里,关于Python处理大数据——csv文件类型的小技巧的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!