📜  大数据分析-清理数据

📅  最后修改于: 2020-12-02 06:39:33             🧑  作者: Mango


一旦收集了数据,我们通常会获得具有不同特征的各种数据源。最直接的步骤是使这些数据源齐整,并继续开发我们的数据产品。但是,这取决于数据的类型。我们应该问自己,对数据进行均匀化是否可行。

也许数据来源是完全不同的,如果将这些来源同质化,信息损失将很大。在这种情况下,我们可以考虑其他选择。一个数据源可以帮助我建立回归模型,另一个数据源可以帮助分类模型吗?是否可以利用异质性来发挥我们的优势,而不仅仅是失去信息?做出这些决定是使分析变得有趣和具有挑战性的原因。

对于审阅,可以为每个数据源使用一种语言。同样,我们有两个选择-

  • 同质化-它涉及将不同的语言翻译成我们拥有更多数据的语言。转换服务的质量是可以接受的,但是如果我们想使用API转换大量数据,则成本将会很高。有可用于此任务的软件工具,但这也很昂贵。

  • 异构化-是否有可能为每种语言开发解决方案?由于检测语料库的语言很简单,因此我们可以为每种语言开发推荐器。根据可用语言的数量来调整每个推荐器将涉及更多的工作,但是如果我们有几种可用的语言,则绝对是一个可行的选择。

Twitter的迷你项目

在当前情况下,我们需要先清理非结构化数据,然后将其转换为数据矩阵,以便对其应用主题建模。通常,从Twitter获取数据时,至少在数据清理过程的第一阶段,会有几个我们不想使用的字符。

例如,在获得这些推文之后,我们得到了以下奇怪的字符:“ ”。这些可能是表情符号,因此为了清除数据,我们将使用以下脚本删除它们。此代码也可在bda / part1 / collect_data / cleaning_data.R文件中找到。

rm(list = ls(all = TRUE)); gc() # Clears the global environment
source('collect_data_twitter.R')
# Some tweets
head(df$text)

[1] "I’m not a big fan of turkey but baked Mac &
cheese "
[2] "@Jayoh30 Like no special sauce on a big mac. HOW"
### We are interested in the text - Let’s clean it!

# We first convert the encoding of the text from latin1 to ASCII
df$text 

数据清理迷你项目的最后一步是清理文本,我们可以将其转换为矩阵并对其应用算法。从clean_tweets向量中存储的文本中,我们可以轻松地将其转换为一袋单词矩阵,并应用无监督的学习算法。