《数据分析实战 基于EXCEL和SPSS系列工具的实践》一3.4 数据量太大了怎么办

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
简介: 早期做培训的时候,很少有学员来问我数据量的事情,因为大家的数据量都比较小,这几年来不同了,经常有学员来问我:老师,作者的数据有300多万,怎么办?还有学员说,我们要做客户画像,数据量有1000多万,我们平时都是放在MySQL里面做的。

本节书摘来自华章出版社《数据分析实战
基于EXCEL和SPSS系列工具的实践》一书中的第3章,第3.4节,纪贺元 著,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.4 数据量太大了怎么办

早期做培训的时候,很少有学员来问我数据量的事情,因为大家的数据量都比较小,这几年来不同了,经常有学员来问我:老师,作者的数据有300多万,怎么办?还有学员说,我们要做客户画像,数据量有1000多万,我们平时都是放在MySQL里面做的。
数据量太大了,怎么办?EXCEL的一个工作表只能存放1048576行数据,也就是104万多一点,数据多了如何处理呢?

3.4.1 放到数据库中处理

EXCEL只是一个办公软件,在处理大数据量方面,它远远没有专业的数据库给力。专业数据库能够处理比较大的数据量,并且处理速度快,在处理数据冗余等方面效率高,远非EXCEL可比。对于专业的数据库,个人的一个感觉是,现在用ACCESS的人越来越少,越来越多的人转向MySQL,除了MySQL具有开源免费的特征之外,它还能和R或者Python组合使用,这应该也是一个很重要的原因。

3.4.2 用专业工具处理

专业的统计分析和挖掘工具虽然不是数据库,但是其数据的吞吐量也远高于EXCEL。以下以SPSS和MODELER为例来说明它们是如何处理大数据量的。
(1)SPSS处理大数据量
这里以案例文件3.10.1和3.10.2进行说明,这两个文件的数据量均超过了60万行,现在要将这两个文件合并,合并后的数据会超过120万行,EXCEL已经无法容纳,因此考虑采用SPSS处理。
打开SPSS软件,依次选择“文件”→“打开”→“数据”,如图3-28所示。

3_28


然后,在硬盘上找到要打开的EXCEL文件的路径,并打开,如图3-29所示。

3_29


同理打开第二个文件。在第一个打开的数据集中依次选择“数据”→“合并文件”→“添加个案”,如图3-30所示。

3_30


然后选择已经打开的数据集,继续合并,如图3-31所示。

3_31


由于两个文件的字段相同,都是“编号”和“尺寸”,因此图3-31的新的活动数据集中,变量只有“编号”和“尺寸”两种,点击确定,完成合并。
为了验证上面的数据,依次点击“分析”→“描述统计”→“描述”,如图3-32所示。

3_32


然后,选择相关的指标,进行描述统计,如图3-33所示。

3_33


最后得到结论,如图3-34所示。

3_34


可以看到,合并后的数据量为1378832,超过了EXCEL工作表的最大容量。
(2)Modeler处理大数据量
与SPSS一样,Modeler也可以处理大数据,以案例文件3.11.1和3.11.2进行说明。打开Modeler软件,在“源”中选择EXCEL节点,选择文件路径,点击确定。打开上述两个文件后,选择“追加”节点,将两个文件的数据进行合并,如图3-35所示。

3_35


为了验证以上合并的结果,选择“统计量”节点,从而验证合并后的数据量,如图3-36所示。

3_36


可以看到,以上数据的总和达到了1465700。

3.4.3 数据抽样

如果数据量比较大,也可以采用数据抽样的方法,SPSS和Modeler都有专门做数据抽样的方法,在EXCEL中也可以实现,比如,可以用随机数函数进行抽样。
以下以SPSS和EXCEL为例来说明如何做数据抽样。
在SPSS中打开数据文件,在“数据”主标签中选择“选择个案”,如图3-37所示。

3_37


接图3-37,点击“选择个案”,如图3-38所示。

3_38


在图3-38中,选择“随机个案样本”,如图3-39所示。

3_39


图3-39中提供了几种常用并且比较简单的数据抽样方法,如果对抽样技术要求不是很高,这几种基本也够用了。
在EXCEL中的数据抽样方法有两种,最简单的就是用randbetween函数,例如我们有50万行数据,希望以1∶100的比例进行抽样,用randbetween(1, 500000)生成5000个随机数即可。另外一个方法是在EXCEL“数据分析”模块中选择“抽样”,如图3-40和图3-41所示。

3_40


在图3-41的抽样方法中,周期法是每隔一个固定的间隔就抽取一个数据,随机法则是在全量数据中随机抽取数据。
随着计算机计算速度的持续提高,数据抽样其实在数据分析中用得并不多,因为如果不是上亿的数量级,还是希望做全量数据的分析。

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
1月前
|
消息中间件 数据挖掘 Kafka
Apache Kafka流处理实战:构建实时数据分析应用
【10月更文挑战第24天】在当今这个数据爆炸的时代,能够快速准确地处理实时数据变得尤为重要。无论是金融交易监控、网络行为分析还是物联网设备的数据收集,实时数据处理技术都是不可或缺的一部分。Apache Kafka作为一款高性能的消息队列系统,不仅支持传统的消息传递模式,还提供了强大的流处理能力,能够帮助开发者构建高效、可扩展的实时数据分析应用。
79 5
|
3月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
在数据科学领域,数据可视化是连接数据与洞察的桥梁,能让复杂的关系变得直观。本文通过实战案例,介绍Python数据分析师必备的Matplotlib与Seaborn两大可视化工具。首先,通过Matplotlib绘制基本折线图;接着,使用Seaborn绘制统计分布图;最后,结合两者在同一图表中展示数据分布与趋势,帮助你提升数据可视化技能,更好地讲述数据故事。
55 1
|
2月前
|
数据采集 数据可视化 数据挖掘
基于Python的数据分析与可视化实战
本文将引导读者通过Python进行数据分析和可视化,从基础的数据操作到高级的数据可视化技巧。我们将使用Pandas库处理数据,并利用Matplotlib和Seaborn库创建直观的图表。文章不仅提供代码示例,还将解释每个步骤的重要性和目的,帮助读者理解背后的逻辑。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供有价值的见解和技能。
161 0
|
2月前
|
SQL 数据采集 数据可视化
深入 Python 数据分析:高级技术与实战应用
本文系统地介绍了Python在高级数据分析中的应用,涵盖数据读取、预处理、探索及可视化等关键环节,并详细展示了聚类分析、PCA、时间序列分析等高级技术。通过实际案例,帮助读者掌握解决复杂问题的方法,提升数据分析技能。使用pandas、matplotlib、seaborn及sklearn等库,提供了丰富的代码示例,便于实践操作。
166 64
|
26天前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
3月前
|
数据挖掘 Python
Pandas实战(1):电商购物用户行为数据分析
Pandas实战(1):电商购物用户行为数据分析
107 1
|
3月前
|
数据挖掘 Python
Pandas实战(3):电商购物用户行为数据分析
Pandas实战(3):电商购物用户行为数据分析
122 1
|
3月前
|
数据挖掘 Python
Pandas实战(2):电商购物用户行为数据分析
Pandas实战(2):电商购物用户行为数据分析
67 1
|
2月前
|
数据采集 数据可视化 数据挖掘
Python 数据分析实战:使用 Pandas 进行数据清洗与可视化
【10月更文挑战第3天】Python 数据分析实战:使用 Pandas 进行数据清洗与可视化
117 0
|
4月前
|
数据采集 算法 数据挖掘
10余位大佬+10余年经验的结晶:Python数据分析与挖掘实战
LinkedIn 对全球超过3.3亿用户的工作经历和技能进行分析后得出,目前最炙手可热的25 项技能中,数据挖掘排名第一。那么数据挖掘是什么? 数据挖掘是从大量数据(包括文本)中挖掘出隐含的、先前未知的、对决策有潜在价值的关系、模式和趋势,并用这些知识和规则建立用于决策支持的模型,提供预测性决策支持的方法、工具和过程。数据挖掘有助于企业发现业务的趋势,揭示已知的事实,预测未知的结果,因此“数据挖掘”已成为企业保持竞争力的必要方法。 今天给小伙伴们分享的Python数据分析与数据挖掘手册是10余位数据挖掘领域资深专家和科研人员,10余年大数据挖掘咨询与实施经验结晶。从数据挖掘的应用出发,以电力、
10余位大佬+10余年经验的结晶:Python数据分析与挖掘实战