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

简介:

本节书摘来自华章计算机《数据分析实战:基于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所示。

image

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

image

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

image

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

image

由于两个文件的字段相同,都是“编号”和“尺寸”,因此图3-31的新的活动数据集中,变量只有“编号”和“尺寸”两种,点击确定,完成合并。

为了验证上面的数据,依次点击“分析”→“描述统计”→“描述”,如图3-32所示。

image

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

image

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

image

可以看到,合并后的数据量为1378832,超过了EXCEL工作表的最大容量。

(2)Modeler处理大数据量

与SPSS一样,Modeler也可以处理大数据,以案例文件3.11.1和3.11.2进行说明。打开Modeler软件,在“源”中选择EXCEL节点,选择文件路径,点击确定。打开上述两个文件后,选择“追加”节点,将两个文件的数据进行合并,如图3-35所示。

image

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

image

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

3.4.3 数据抽样

如果数据量比较大,也可以采用数据抽样的方法,SPSS和Modeler都有专门做数据抽样的方法,在EXCEL中也可以实现,比如,可以用随机数函数进行抽样。

以下以SPSS和EXCEL为例来说明如何做数据抽样。

在SPSS中打开数据文件,在“数据”主标签中选择“选择个案”,如图3-37所示。

image

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

image

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

image

图3-39中提供了几种常用并且比较简单的数据抽样方法,如果对抽样技术要求不是很高,这几种基本也够用了。

在EXCEL中的数据抽样方法有两种,最简单的就是用randbetween函数,例如我们有50万行数据,希望以1∶100的比例进行抽样,用randbetween(1, 500000)生成5000个随机数即可。另外一个方法是在EXCEL“数据分析”模块中选择“抽样”,如图3-40和图3-41所示。

image

在图3-41的抽样方法中,周期法是每隔一个固定的间隔就抽取一个数据,随机法则是在全量数据中随机抽取数据。

随着计算机计算速度的持续提高,数据抽样其实在数据分析中用得并不多,因为如果不是上亿的数量级,还是希望做全量数据的分析。

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
4天前
|
数据采集 数据可视化 数据挖掘
Python 与 PySpark数据分析实战指南:解锁数据洞见
Python 与 PySpark数据分析实战指南:解锁数据洞见
|
7天前
|
SQL 数据采集 存储
Hive实战 —— 电商数据分析(全流程详解 真实数据)
关于基于小型数据的Hive数仓构建实战,目的是通过分析某零售企业的门店数据来进行业务洞察。内容涵盖了数据清洗、数据分析和Hive表的创建。项目需求包括客户画像、消费统计、资源利用率、特征人群定位和数据可视化。数据源包括Customer、Transaction、Store和Review四张表,涉及多个维度的聚合和分析,如按性别、国家统计客户、按时间段计算总收入等。项目执行需先下载数据和配置Zeppelin环境,然后通过Hive进行数据清洗、建表和分析。在建表过程中,涉及ODS、DWD、DWT、DWS和DM五层,每层都有其特定的任务和粒度。最后,通过Hive SQL进行各种业务指标的计算和分析。
26 1
Hive实战 —— 电商数据分析(全流程详解 真实数据)
|
13天前
|
SQL 人工智能 自然语言处理
让老板成为数据分析师--ChatGpt链接本地数据源实战测试
本文探究ChatGpt等AI机器人能否帮助老板快速的做数据分析?用自然语言同老板进行沟通,满足老板的所有数据分析的诉求?
|
14天前
|
Linux 网络安全 数据处理
【专栏】Linux下的xxd命令是一个强大的二进制数据处理工具,用于十六进制转储和数据分析,我教你应该如何使用!
【4月更文挑战第28天】Linux下的xxd命令是一个强大的二进制数据处理工具,用于十六进制转储和数据分析。它可以显示文件的十六进制和ASCII表示,方便查看内容、分析数据结构和比较文件。xxd支持指定输出格式、写入文件、数据提取和转换等功能。在网络安全分析、程序调试和数据恢复等领域有广泛应用。通过掌握xxd,用户能更深入理解和处理二进制数据。
|
18天前
|
数据采集 数据可视化 数据挖掘
R语言与Python:比较两种数据分析工具
【4月更文挑战第25天】R语言和Python是目前最流行的两种数据分析工具。本文将对这两种工具进行比较,包括它们的历史、特点、应用场景、社区支持、学习资源、性能等方面,以帮助读者更好地了解和选择适合自己的数据分析工具。
|
24天前
|
机器学习/深度学习 数据可视化 数据挖掘
python数据分析工具StatsModels
【4月更文挑战第15天】`StatsModels`是Python的统计库,基于NumPy和SciPy,提供线性模型、广义线性模型、稳健回归、时间序列分析等多样功能。支持离散选择模型、方差分析和非参数统计,还包含图形和可视化工具。安装`StatsModels`可使用`pip install statsmodels`。示例展示了如何进行普通最小二乘回归并绘制回归线。该库适用于数据分析和预测建模。
20 1
|
24天前
|
机器学习/深度学习 数据挖掘 计算机视觉
python数据分析工具SciPy
【4月更文挑战第15天】SciPy是Python的开源库,用于数学、科学和工程计算,基于NumPy扩展了优化、线性代数、积分、插值、特殊函数、信号处理、图像处理和常微分方程求解等功能。它包含优化、线性代数、积分、信号和图像处理等多个模块。通过SciPy,可以方便地执行各种科学计算任务。例如,计算高斯分布的PDF,需要结合NumPy使用。要安装SciPy,可以使用`pip install scipy`命令。这个库极大地丰富了Python在科学计算领域的应用。
15 1
|
24天前
|
数据可视化 数据挖掘 Linux
python数据分析工具Seaborn
【4月更文挑战第15天】Seaborn是Python的数据可视化库,基于matplotlib,提供统计图形绘制。它包含内置数据集,支持风格控制和多种图形类型如散点图、分布图,擅长处理分类数据并能可视化统计估计。Seaborn还能绘制热图、聚类图及交互式图形。要使用它,先用`pip install seaborn`安装,然后导入并应用到数据集上,如示例中展示的散点图绘制。
13 1
|
25天前
|
数据可视化 数据挖掘 API
Python数据分析工具Seaborn
【4月更文挑战第14天】Seaborn是Python的数据可视化库,基于matplotlib,为数据科学家提供高级接口创建统计图形。其特点包括简洁的API、丰富的图形类型(如散点图、直方图)、内置统计功能、数据集集成和与pandas的紧密配合。使用时需先安装Seaborn和matplotlib,然后通过Seaborn的函数(如`scatterplot()`、`histplot()`)绘制图形。它是数据分析和可视化的一个强大工具。
22 8
Python数据分析工具Seaborn
|
25天前
|
数据可视化 数据挖掘 Python
Python中数据分析工具Matplotlib
【4月更文挑战第14天】Matplotlib是Python的数据可视化库,能生成多种图表,如折线图、柱状图等。以下是一个绘制简单折线图的代码示例: ```python import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.figure() plt.plot(x, y) plt.title('简单折线图') plt.xlabel('X轴') plt.ylabel('Y轴') plt.show() ```
13 1