R语言文本挖掘NASA数据网络分析,tf-idf和主题建模

简介: R语言文本挖掘NASA数据网络分析,tf-idf和主题建模

NASA托管和/或维护了超过32,000个数据集; 这些数据集涵盖了从地球科学到航空航天工程到NASA本身管理的主题。我们可以使用这些数据集的元数据来理解它们之间的联系。


1 NASA如何组织数据

首先,让我们下载JSON文件,并查看元数据中存储的名称。

metadata <- fromJSON("https://data.nasa.gov/data.json")
names(metadata$dataset)

我们在这里看到,我们可以从发布每个数据集的人那里获取信息,以获取他们发布的许可证。


class(metadata$dataset$title)

1.1 整理数据

让我们为标题,描述和关键字设置单独的整洁数据框,保留每个数据集的数据集ID,以便我们可以在以后的分析中将它们连接起来

1.2 初步的简单探索

NASA数据集中最常见的单词是什么?


nasa_title %>%
  count(word, sort = TRUE)

最常见的关键字是什么?


nasa_keyword %>% 
  group_by(keyword) %>% 
  count(sort = TRUE)
## # A tibble: 1,774 x 2
## # Groups:   keyword [1,774]
##    keyword                     n
##    <chr>                   <int>
##  1 EARTH SCIENCE           14362
##  2 Project                  7452
##  3 ATMOSPHERE               7321
##  4 Ocean Color              7268
##  5 Ocean Optics             7268
##  6 Oceans                   7268
##  7 completed                6452


2.1描述和标题词的网络

我们可以使用pairwise_count 来计算每对单词在标题或描述字段中出现的次数。

 

这些是最常出现在descripton字段中的单词对。


我们在这个标题词网络中看到了一些清晰的聚类; 美国国家航空航天局数据集标题中的单词大部分被组织成几个词汇系列,这些词汇往往在一起。


关键词网络

接下来,让我们建立一个 关键字的网络,以查看哪些关键字通常在同一数据集中一起出现。


## # A tibble: 13,390 x 3
##    item1         item2                       n
##    <chr>         <chr>                   <dbl>
##  1 OCEANS        OCEAN OPTICS             7324
##  2 EARTH SCIENCE ATMOSPHERE               7318
##  3 OCEANS        OCEAN COLOR              7270
##  4 OCEAN OPTICS  OCEAN COLOR              7270


请注意,此排序数据帧顶部的这些关键字的相关系数等于1; 他们总是一起出现。这意味着这些是多余的关键字。继续在这些对中使用两个关键字可能没有意义; 相反,只能使用一个关键字。

让我们可视化关键字相关性网络,就像我们为关键字共同出现一样。


3计算描述字段的tf-idf

网络图向我们展示了描述字段由一些常用词来控制,如“数据”,“全局”和“分辨率”; 可以使用tf-idf作为统计数据来查找各个描述字段的特征词。


4主题建模

使用tf-idf作为统计数据已经让我们深入了解NASA描述字段的内容,但让我们尝试另外一种方法来解决NASA描述字段的内容。

每个主题是关于什么的?让我们来看看每个主题的前10个术语。


## # A tibble: 240 x 3
##    topic term          beta
##    <int> <chr>        <dbl>
##  1     1 data        0.0449
##  2     1 soil        0.0368
##  3     1 moisture    0.0295
##  4     1 amsr        0.0244
##  5     1 sst         0.0168
##  6     1 validation  0.0132
##  7     1 temperature 0.0132
##  8     1 surface     0.0129
##  9     1 accuracy    0.0123
## 10     1 set         0.0116




首先注意y轴是以对数刻度绘制的; 否则很难弄清楚情节中的任何细节。该分布表明文档被很好地区分为属于某个主题。我们还可以看看每个主题中概率的分布情况。

相关文章
|
27天前
|
网络协议 Python
水声网络(UAN)仿真的信道建模(Matlab代码实现)
水声网络(UAN)仿真的信道建模(Matlab代码实现)
|
3月前
|
机器学习/深度学习 移动开发 供应链
基于时间图神经网络多的产品需求预测:跨序列依赖性建模实战指南
本文展示了如何通过学习稀疏影响图、应用图卷积融合邻居节点信息,并结合时间卷积捕获演化模式的完整技术路径,深入分析每个步骤的机制原理和数学基础。
106 1
|
9月前
|
机器学习/深度学习 网络架构
揭示Transformer重要缺陷!北大提出傅里叶分析神经网络FAN,填补周期性特征建模缺陷
近年来,神经网络在MLP和Transformer等模型上取得显著进展,但在处理周期性特征时存在缺陷。北京大学提出傅里叶分析网络(FAN),基于傅里叶分析建模周期性现象。FAN具有更少的参数、更好的周期性建模能力和广泛的应用范围,在符号公式表示、时间序列预测和语言建模等任务中表现出色。实验表明,FAN能更好地理解周期性特征,超越现有模型。论文链接:https://arxiv.org/pdf/2410.02675.pdf
252 68
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
揭示Transformer周期建模缺陷!北大提出新型神经网络FAN,填补周期性特征建模能力缺陷
北京大学研究团队发现,Transformer等主流神经网络在周期特征建模方面存在缺陷,如记忆数据模式而非理解内在规律,导致泛化能力受限。为此,团队提出基于傅里叶分析的Fourier Analysis Network(FAN),通过显式建模周期性特征,提升模型的理解和预测能力,减少参数和计算量,并在多个实验中验证其优越性。论文链接:https://arxiv.org/pdf/2410.02675.pdf
172 3
R语言基于表格文件的数据绘制具有多个系列的柱状图与直方图
【9月更文挑战第9天】在R语言中,利用`ggplot2`包可绘制多系列柱状图与直方图。首先读取数据文件`data.csv`,加载`ggplot2`包后,使用`ggplot`函数指定轴与填充颜色,并通过`geom_bar`或`geom_histogram`绘图。参数如`stat`, `position`, `alpha`等可根据需要调整,实现不同系列的图表展示。
263 9
|
数据采集 数据可视化 数据挖掘
R语言在金融数据分析中的深度应用:探索数据背后的市场智慧
【9月更文挑战第1天】R语言在金融数据分析中展现出了强大的功能和广泛的应用前景。通过丰富的数据处理函数、强大的统计分析功能和优秀的可视化效果,R语言能够帮助金融机构深入挖掘数据价值,洞察市场动态。未来,随着金融数据的不断积累和技术的不断进步,R语言在金融数据分析中的应用将更加广泛和深入。
|
数据采集 机器学习/深度学习 数据挖掘
R语言数据清洗:高效处理缺失值与重复数据的策略
【8月更文挑战第29天】处理缺失值和重复数据是数据清洗中的基础而重要的步骤。在R语言中,我们拥有多种工具和方法来有效地应对这些问题。通过识别、删除或插补缺失值,以及删除重复数据,我们可以提高数据集的质量和可靠性,为后续的数据分析和建模工作打下坚实的基础。 需要注意的是,处理缺失值和重复数据时,我们应根据实际情况和数据特性选择合适的方法,并在处理过程中保持谨慎,以避免引入新的偏差或错误。
|
数据采集 存储 数据可视化
R语言时间序列分析:处理与建模时间序列数据的深度探索
【8月更文挑战第31天】R语言作为一款功能强大的数据分析工具,为处理时间序列数据提供了丰富的函数和包。从数据读取、预处理、建模到可视化,R语言都提供了灵活且强大的解决方案。然而,时间序列数据的处理和分析是一个复杂的过程,需要结合具体的应用场景和需求来选择合适的方法和模型。希望本文能为读者在R语言中进行时间序列分析提供一些有益的参考和启示。
|
9月前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
218 17

热门文章

最新文章