大数据伴随着它的复杂化。适当地收集和管理数据以及用于这样做的方法发挥着重要作用。有了这样的基本关切,数据准备的方法就变得非常有帮助,而且是一个关键的开始。一个好的数据准备程序可以进行有效的分析,限制和减少在处理过程中可能出现的错误和不准确,使所有用户更容易获得处理后的数据。最近,随着新的工具和技术的出现,数据准备的过程变得更加容易,任何人都可以独立地清理和澄清数据。数据准备是在预处理和分析之前对原始数据进行清理和转换的过程。它是处理前的一个小而重要的步骤,通常涉及重新格式化数据,进行修正,并结合多个数据集以丰富当前数据。对于数据专业人员或商业用户来说,数据准备通常被认为是一项冗长的工作,但它是将数据放在背景中,将其转化为可能有助于决策的洞察力,消除因数据质量差而产生的偏差的重要前提条件。
数据准备过程首先从寻找正确的数据开始。这些数据可以来自现有的数据目录、仓库,也可以是临时添加的。在收集到数据后,重要的是发现和探索每个数据集的准备和处理。这一步非常重要,有助于了解数据,并理解在数据被称为在特定情况下有用之前必须要做的事情。清理数据是传统上数据准备过程中另一个最耗时的部分,但它对于向前清除和处理错误的数据以帮助填补存在的差距至关重要。数据清理是一个过程,你通过所有要处理的数据,删除或更新被认为是不完整、不正确、格式不当、重复或高度不相关的信息。数据清理过程通常还涉及到清理以前在一个地区编制的所有数据。数据清理过程是一次性完成的,如果信息已经堆积了多年,可能需要相当长的时间。这就是为什么定期进行数据清理和打理数据的重要性。
然后,通过更新格式或价值条目来进一步转化数据,以达到一个干净和明确的结果,或使数据更容易被更多的受众理解。一旦所有提到的过程完成,数据就被准备好了。这些数据可以被存储或灌输到第三方应用程序,如商业智能工具,为处理和分析扫清道路。一个彻底的数据准备过程可以给一个组织带来许多优势,反而让它有了先机。在使用数据进行分析或将其插入 仪表盘进行可视化之前,它必须是干净和没有错误的。为分析准备数据将有助于避免错误,节省更多的时间投入到下一步的工作中。这些错误在数据被转移出其原始格式后将更难被发现和修复。在建立数据模型或应用程序时,使用经过适当清理和格式化的数据将确保具有适当准确性的顶级报告和分析。这最终有助于获得改变游戏规则和革命性的商业洞察力。
什么是DataPrep?
DataPrep是一个可用于python的开源库,它可以让你使用一个单一的库来准备你的数据,只需几行代码。DataPrep可以用来解决多种与数据有关的问题,该库提供了许多功能,通过这些功能可以解决和照顾到每一个问题。使用DataPrep库,人们可以使用dataprep.connector模块从多个数据源收集数据,使用dataprep.eda模块进行密集的探索性分析,使用dataprep.clean模块清理和标准化数据集。DataPrep自动检测并突出显示数据中存在的洞察力,如缺失的数据、明显的计数和统计。 只需使用一行代码就可以在几秒钟内创建整个详细的概况报告,这使得它比其他库执行数据准备或EDA的速度快十倍。
开始使用该代码
在这篇文章中,我们将探索DataPrep库的不同功能,以方便数据准备和EDA,这将有助于我们更好地理解该库。下面的实现部分是受官方DataPrep文档的启发,可以通过这里的链接访问。
安装库
要安装这个库,你可以使用下面这行代码。
# Run the code to install DataPrep
!pip install dataprep
安装依赖项
此外,从DataPrep库本身,我们可以为要执行的任务导入所需的依赖项。
import pandas as pd
from dataprep.eda import plot, plot_correlation, plot_missing
由于我们想从我们的数据集中创建不同的图表,我们导入了plot, plot_correlation来创建相关图, plot_missing来绘制缺失数据的数量。
现在,让我们把我们的数据加载到数据框中。
#loading data in to the DataPrep dataframe
df = pd.read_csv("/content/master.csv")
创建可视化
使用DataPrep,我们只需用一行代码就可以为数据创建所有可能的可视化效果。让我们绘制我们加载的数据,看看它是什么样子的。
df["year"] = df["year"].astype("category")
plot(df)
正如我们所看到的,这个库本身就能检测到数据,并在一个窗口中绘制出所有必要的数据图表。
自动生成洞察力
你也可以得到一个单列的详细图,包括其所有的统计数据,以更好地了解该列。
plot(df, "gdp_per_capita ($)")
我们还可以创建一个数据框架,处理缺失的值,然后创建一个相关图。
df_without_missing = df.dropna('columns')
plot_correlation(df_without_missing)
plot_correlation(df_without_missing, k=1)
plot_correlation(df_without_missing, value_range=(0,1)
无论是Pearson, Spearman还是Kendall-Tau,任何相关图都可以用DataPrep库轻松绘制出来。
使用DataPrep的更多操作
现在让我们在另一个数据集上探索一些更多的操作。在这里,我使用泰坦尼克号数据集,用DataPrep进行进一步的功能操作。
探索数据集中的缺失数据。
#plot missing
plot_missing(train_df)
DataPrep会自动分析数据并提供必要的图表,如柱状图、热图或树状图。
创建词云也从未如此简单,这种功能可以用于NLP任务,这将是非常有帮助的。
plot(train_df,'name' )
为了进一步分析和了解需要对加载的数据集采取哪些必要的步骤,我们可以一次性生成数据集的即时报告,这将为我们提供所有必要的信息和指标,以分析在数据准备阶段必须关注的地方,如果有的话,特定的列。
#creating a full report
create_report(train_df)
每一列的详细统计资料都会被生成,并有选项来执行列之间的互动,检查相关性或缺失值的图。
结束语
在这篇文章中,我们了解了大数据分析中数据准备的重要性以及这样做所需的必要步骤。我们还探索了一个名为DataPrep的库,并测试了其在数据准备和EDA阶段可能起到的不同功能。尽管DataPrep库还能做很多事情,但我建议鼓励读者进一步探索,了解该库的巨大力量。上述的实现可以作为Colab笔记本在两个独立的笔记本中找到。你可以通过这里的链接访问它们。 笔记本1-泰坦尼克号数据集 笔记本2.
学习愉快!
参考资料
The postExploring DataPrep:一个用于数据准备和EDA的Python库出现在印度分析杂志上。