R語(yǔ)言文本挖掘使用tf-idf分析NASA元數(shù)據(jù)的關(guān)鍵字
原文鏈接:http://tecdat.cn/?p=9448
目錄
?
獲取和整理NASA元數(shù)據(jù)
計(jì)算tf-idf
關(guān)鍵字和描述
可視化結(jié)果
NASA有32,000多個(gè)數(shù)據(jù)集,有關(guān)NASA數(shù)據(jù)集的元數(shù)據(jù)??可以JSON格式在線獲得。我們使用tf-idf在描述字段中找到重要的單詞,并將其與關(guān)鍵字聯(lián)系起來(lái)。
獲取和整理NASA元數(shù)據(jù)
讓我們下載32,000多個(gè)NASA數(shù)據(jù)集的元數(shù)據(jù)。
library(jsonlite)
library(dplyr)
library(tidyr)
metadata <- fromJSON("data.json")
names(metadata$dataset)
## ?[1] "_id" ? ? ? ? ? ? ? ?"@type" ? ? ? ? ? ? ?"accessLevel" ? ? ? ?"accrualPeriodicity"
## ?[5] "bureauCode" ? ? ? ? "contactPoint" ? ? ? "description" ? ? ? ?"distribution"
## ?[9] "identifier" ? ? ? ? "issued" ? ? ? ? ? ? "keyword" ? ? ? ? ? ?"landingPage"
## [13] "language" ? ? ? ? ? "modified" ? ? ? ? ? "programCode" ? ? ? ?"publisher"
## [17] "spatial" ? ? ? ? ? ?"temporal" ? ? ? ? ? "theme" ? ? ? ? ? ? ?"title"
## [21] "license" ? ? ? ? ? ?"isPartOf" ? ? ? ? ? "references" ? ? ? ? "rights"
## [25] "describedBy"
nasadesc <- data_frame(id = metadata$dataset$`_id`$`$oid`, desc = metadata$dataset$description)
nasadesc
## # A tibble: 32,089 x 2
## ? ? ? ? ? ? ? ? ? ? ? ? ?id
## ? ? ? ? ? ? ? ? ? ? ? <chr>
## 1 ?55942a57c63a7fe59b495a77
## 2 ?55942a57c63a7fe59b495a78
## 3 ?55942a58c63a7fe59b495a79
## 4 ?55942a58c63a7fe59b495a7a
## 5 ?55942a58c63a7fe59b495a7b
## 6 ?55942a58c63a7fe59b495a7c
## 7 ?55942a58c63a7fe59b495a7d
## 8 ?55942a58c63a7fe59b495a7e
## 9 ?55942a58c63a7fe59b495a7f
## 10 55942a58c63a7fe59b495a80
## # ... with 32,079 more rows, and 1 more variables: desc <chr>
?
## # A tibble: 32,089 x 2
## ? ? ? ? ? ? ? ? ? ? ? ? ?id
## ? ? ? ? ? ? ? ? ? ? ? <chr>
## 1 ?55942a57c63a7fe59b495a77
## 2 ?55942a57c63a7fe59b495a78
## 3 ?55942a58c63a7fe59b495a79
## 4 ?55942a58c63a7fe59b495a7a
## 5 ?55942a58c63a7fe59b495a7b
## 6 ?55942a58c63a7fe59b495a7c
## 7 ?55942a58c63a7fe59b495a7d
## 8 ?55942a58c63a7fe59b495a7e
## 9 ?55942a58c63a7fe59b495a7f
## 10 55942a58c63a7fe59b495a80
## # ... with 32,079 more rows, and 1 more variables: desc <chr>
讓我們輸出其中的一部分。
?
nasadesc %>% select(desc) %>% sample_n(5)
## # A tibble: 5 x 1
## ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?desc
## ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? <chr>
## 1 ?A Group for High Resolution Sea Surface Temperature (GHRSST) Level 4 sea surface temperature analysis produced as a retrospective dataset at the JPL P
## 2 ?ML2CO is the EOS Aura Microwave Limb Sounder (MLS) standard product for carbon monoxide derived from radiances measured by the 640 GHz radiometer. The
## 3 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Crew lock bag. Polygons: 405 Vertices: 514
## 4 ?JEM Engineering proved the technical feasibility of the FlexScan array?a very low-cost, highly-efficient, wideband phased array antenna?in Phase I, an
## 5 MODIS (or Moderate Resolution Imaging Spectroradiometer) is a key instrument aboard the\nTerra (EOS AM) and Aqua (EOS PM) satellites. Terra's orbit aro
這是關(guān)鍵詞。
## # A tibble: 126,814 x 2
## ? ? ? ? ? ? ? ? ? ? ? ? ?id ? ? ? keyword
## ? ? ? ? ? ? ? ? ? ? ? <chr> ? ? ? ? <chr>
## 1 ?55942a57c63a7fe59b495a77 EARTH SCIENCE
## 2 ?55942a57c63a7fe59b495a77 ? HYDROSPHERE
## 3 ?55942a57c63a7fe59b495a77 SURFACE WATER
## 4 ?55942a57c63a7fe59b495a78 EARTH SCIENCE
## 5 ?55942a57c63a7fe59b495a78 ? HYDROSPHERE
## 6 ?55942a57c63a7fe59b495a78 SURFACE WATER
## 7 ?55942a58c63a7fe59b495a79 EARTH SCIENCE
## 8 ?55942a58c63a7fe59b495a79 ? HYDROSPHERE
## 9 ?55942a58c63a7fe59b495a79 SURFACE WATER
## 10 55942a58c63a7fe59b495a7a EARTH SCIENCE
## # ... with 126,804 more rows
最常見(jiàn)的關(guān)鍵字是什么?
## # A tibble: 1,774 x 2
## ? ? ? ? ? ? ? ? ? ?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
## 8 ?ATMOSPHERIC WATER VAPOR ?3142
## 9 ? ? ? ? ? ? ? ? ? OCEANS ?2765
## 10 ? ? ? ? ? ?LAND SURFACE ?2720
## # ... with 1,764 more rows
看起來(lái)“已完成項(xiàng)目”對(duì)于某些目的來(lái)說(shuō)可能不是有用的關(guān)鍵字,我們可能希望將所有這些都更改為小寫(xiě)或大寫(xiě),以消除如“ OCEANS”和“ Oceans”之類(lèi)的重復(fù)項(xiàng)。
計(jì)算文字的tf-idf
什么是tf-idf?評(píng)估文檔中單詞的重要性的一種方法可能是其??術(shù)語(yǔ)頻率??(tf),即單詞在文檔中出現(xiàn)的頻率。但是,一些經(jīng)常出現(xiàn)的單詞并不重要。在英語(yǔ)中,這些詞可能是“ the”,“ is”,“ of”等詞。另一種方法是查看術(shù)語(yǔ)的??逆文本頻率指數(shù)?(idf),這會(huì)降低常用單詞的權(quán)重,而增加在文檔集中很少使用的單詞的權(quán)重。
## # A tibble: 2,728,224 x 3
## ? ? ? ? ? ? ? ? ? ? ? ? ?id ?word ? ? n
## ? ? ? ? ? ? ? ? ? ? ? <chr> <chr> <int>
## 1 ?55942a88c63a7fe59b498280 ? amp ? 679
## 2 ?55942a88c63a7fe59b498280 ?nbsp ? 655
## 3 ?55942a8ec63a7fe59b4986ef ? ?gt ? 330
## 4 ?55942a8ec63a7fe59b4986ef ? ?lt ? 330
## 5 ?55942a8ec63a7fe59b4986ef ? ? p ? 327
## 6 ?55942a8ec63a7fe59b4986ef ? the ? 231
## 7 ?55942a86c63a7fe59b49803b ? amp ? 208
## 8 ?55942a86c63a7fe59b49803b ?nbsp ? 204
## 9 ?56cf5b00a759fdadc44e564a ? the ? 201
## 10 55942a86c63a7fe59b4980a2 ? ?gt ? 191
## # ... with 2,728,214 more rows
這些是NASA字段中最常見(jiàn)的“單詞”,是詞頻最高的單詞。讓我們看一下第一個(gè)數(shù)據(jù)集,例如:
## # A tibble: 1 x 1
## ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? desc
## ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?<chr>
## 1 The objective of the Variable Oxygen Regulator Element is to develop an oxygen-rated, contaminant-tolerant oxygen regulator to control suit p
tf-idf算法應(yīng)該減少所有這些的權(quán)重,因?yàn)樗鼈兒艹R?jiàn),但是我們可以根據(jù)需要通過(guò)停用詞將其刪除?,F(xiàn)在,讓我們?yōu)槊枋鲎侄沃械乃袉卧~計(jì)算tf-idf。
## # A tibble: 2,728,224 x 6
## ? ? ? ? ? ? ? ? ? ? ? ? ?id ?word ? ? n ? ? ? ? tf ? ? ? idf ? ? ?tf_idf
## ? ? ? ? ? ? ? ? ? ? ? <chr> <chr> <int> ? ? ?<dbl> ? ? <dbl> ? ? ? <dbl>
## 1 ?55942a88c63a7fe59b498280 ? amp ? 679 0.35661765 3.1810813 1.134429711
## 2 ?55942a88c63a7fe59b498280 ?nbsp ? 655 0.34401261 4.2066578 1.447143322
## 3 ?55942a8ec63a7fe59b4986ef ? ?gt ? 330 0.05722213 3.2263517 0.184618705
## 4 ?55942a8ec63a7fe59b4986ef ? ?lt ? 330 0.05722213 3.2903671 0.188281801
## 5 ?55942a8ec63a7fe59b4986ef ? ? p ? 327 0.05670192 3.3741126 0.191318680
## 6 ?55942a8ec63a7fe59b4986ef ? the ? 231 0.04005549 0.1485621 0.005950728
## 7 ?55942a86c63a7fe59b49803b ? amp ? 208 0.32911392 3.1810813 1.046938133
## 8 ?55942a86c63a7fe59b49803b ?nbsp ? 204 0.32278481 4.2066578 1.357845252
## 9 ?56cf5b00a759fdadc44e564a ? the ? 201 0.06962245 0.1485621 0.010343258
## 10 55942a86c63a7fe59b4980a2 ? ?gt ? 191 0.12290862 3.2263517 0.396546449
## # ... with 2,728,214 more rows
添加的列是tf,idf,這兩個(gè)數(shù)量相乘在一起是tf-idf。NASA描述字段中最高的tf-idf詞是什么?
## # A tibble: 2,728,224 x 6
## ? ? ? ? ? ? ? ? ? ? ? ? ?id ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?word ? ? n ? ?tf ? ? ? idf
## ? ? ? ? ? ? ? ? ? ? ? <chr> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? <chr> <int> <dbl> ? ? <dbl>
## 1 ?55942a7cc63a7fe59b49774a ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? rdr ? ? 1 ? ? 1 10.376269
## 2 ?55942ac9c63a7fe59b49b688 palsar_radiometric_terrain_corrected_high_res ? ? 1 ? ? 1 10.376269
## 3 ?55942ac9c63a7fe59b49b689 ?palsar_radiometric_terrain_corrected_low_res ? ? 1 ? ? 1 10.376269
## 4 ?55942a7bc63a7fe59b4976ca ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?lgrs ? ? 1 ? ? 1 ?8.766831
## 5 ?55942a7bc63a7fe59b4976d2 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?lgrs ? ? 1 ? ? 1 ?8.766831
## 6 ?55942a7bc63a7fe59b4976e3 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?lgrs ? ? 1 ? ? 1 ?8.766831
## 7 ?55942ad8c63a7fe59b49cf6c ? ? ? ? ? ? ? ? ? ? ?template_proddescription ? ? 1 ? ? 1 ?8.296827
## 8 ?55942ad8c63a7fe59b49cf6d ? ? ? ? ? ? ? ? ? ? ?template_proddescription ? ? 1 ? ? 1 ?8.296827
## 9 ?55942ad8c63a7fe59b49cf6e ? ? ? ? ? ? ? ? ? ? ?template_proddescription ? ? 1 ? ? 1 ?8.296827
## 10 55942ad8c63a7fe59b49cf6f ? ? ? ? ? ? ? ? ? ? ?template_proddescription ? ? 1 ? ? 1 ?8.296827
## ? ? ? tf_idf
## ? ? ? ?<dbl>
## 1 ?10.376269
## 2 ?10.376269
## 3 ?10.376269
## 4 ? 8.766831
## 5 ? 8.766831
## 6 ? 8.766831
## 7 ? 8.296827
## 8 ? 8.296827
## 9 ? 8.296827
## 10 ?8.296827
## # ... with 2,728,214 more rows
因此,這些是用tf-idf衡量的描述字段中最“重要”的詞,這意味著它們很常見(jiàn),但不太常用。
## # A tibble: 1 x 1
## ? ?desc
## ? <chr>
## 1 ? RDR
tf-idf算法認(rèn)為這非常重要的詞。
關(guān)鍵字和描述
因此,現(xiàn)在我們知道描述中的哪個(gè)詞具有較高的tf-idf,并且在關(guān)鍵字中也有這些描述的標(biāo)簽。
## # A tibble: 11,013,838 x 7
## ? ? ? ? ? ? ? ? ? ? ? ? ?id ?word ? ? n ? ? ? ? tf ? ? ?idf ? ?tf_idf ? ? ? ? ? ? ?keyword
## ? ? ? ? ? ? ? ? ? ? ? <chr> <chr> <int> ? ? ?<dbl> ? ?<dbl> ? ? <dbl> ? ? ? ? ? ? ? ?<chr>
## 1 ?55942a88c63a7fe59b498280 ? amp ? 679 0.35661765 3.181081 1.1344297 ? ? ? ? ? ? ?ELEMENT
## 2 ?55942a88c63a7fe59b498280 ? amp ? 679 0.35661765 3.181081 1.1344297 JOHNSON SPACE CENTER
## 3 ?55942a88c63a7fe59b498280 ? amp ? 679 0.35661765 3.181081 1.1344297 ? ? ? ? ? ? ? ? ?VOR
## 4 ?55942a88c63a7fe59b498280 ? amp ? 679 0.35661765 3.181081 1.1344297 ? ? ? ? ? ? ? ACTIVE
## 5 ?55942a88c63a7fe59b498280 ?nbsp ? 655 0.34401261 4.206658 1.4471433 ? ? ? ? ? ? ?ELEMENT
## 6 ?55942a88c63a7fe59b498280 ?nbsp ? 655 0.34401261 4.206658 1.4471433 JOHNSON SPACE CENTER
## 7 ?55942a88c63a7fe59b498280 ?nbsp ? 655 0.34401261 4.206658 1.4471433 ? ? ? ? ? ? ? ? ?VOR
## 8 ?55942a88c63a7fe59b498280 ?nbsp ? 655 0.34401261 4.206658 1.4471433 ? ? ? ? ? ? ? ACTIVE
## 9 ?55942a8ec63a7fe59b4986ef ? ?gt ? 330 0.05722213 3.226352 0.1846187 JOHNSON SPACE CENTER
## 10 55942a8ec63a7fe59b4986ef ? ?gt ? 330 0.05722213 3.226352 0.1846187 ? ? ? ? ? ? ?PROJECT
## # ... with 11,013,828 more rows
可視化結(jié)果
讓我們來(lái)看幾個(gè)示例關(guān)鍵字中最重要的單詞。
## # A tibble: 122 x 7
## ? ? ? ? ? ? ? ? ? ? ? ? ?id ? ? ?word ? ? n ? ? ? ?tf ? ? ?idf ? tf_idf ? ?keyword
## ? ? ? ? ? ? ? ? ? ? ? <chr> ? ?<fctr> <int> ? ? <dbl> ? ?<dbl> ? ?<dbl> ? ? ?<chr>
## 1 ?55942a60c63a7fe59b49612f estimates ? ? 1 0.5000000 3.172863 1.586432 ? ? CLOUDS
## 2 ?55942a76c63a7fe59b49728d ? ? ?ncdc ? ? 1 0.1666667 7.603680 1.267280 ? ? CLOUDS
## 3 ?55942a60c63a7fe59b49612f ? ? cloud ? ? 1 0.5000000 2.464212 1.232106 ? ? CLOUDS
## 4 ?55942a5ac63a7fe59b495bd8 ? ? ?fife ? ? 1 0.2000000 5.910360 1.182072 ? ? CLOUDS
## 5 ?55942a5cc63a7fe59b495deb allometry ? ? 1 0.1428571 7.891362 1.127337 VEGETATION
## 6 ?55942a5dc63a7fe59b495ede ? ? ? tgb ? ? 3 0.1875000 5.945452 1.114772 VEGETATION
## 7 ?55942a5ac63a7fe59b495bd8 ? ? ?tovs ? ? 1 0.2000000 5.524238 1.104848 ? ? CLOUDS
## 8 ?55942a5ac63a7fe59b495bd8 ?received ? ? 1 0.2000000 5.332843 1.066569 ? ? CLOUDS
## 9 ?55942a5cc63a7fe59b495dfd ? ? ? sap ? ? 1 0.1250000 8.430358 1.053795 VEGETATION
## 10 55942a60c63a7fe59b496131 ?abstract ? ? 1 0.3333333 3.118561 1.039520 ? ? CLOUDS
## # ... with 112 more rows
?
## # A tibble: 1 x 1
## ? ? ? ? ? ? ?desc
## ? ? ? ? ? ? <chr>
## 1 Cloud estimates
tf-idf算法在僅2個(gè)字長(zhǎng)的描述中無(wú)法很好地工作,或者它將對(duì)這些字加權(quán)過(guò)重。這是不合適的。
?


最受歡迎的見(jiàn)解
1.探析大數(shù)據(jù)期刊文章研究熱點(diǎn)
2.618網(wǎng)購(gòu)數(shù)據(jù)盤(pán)點(diǎn)-剁手族在關(guān)注什么
3.r語(yǔ)言文本挖掘tf-idf主題建模,情感分析n-gram建模研究
4.python主題建模可視化lda和t-sne交互式可視化
5.疫情下的新聞數(shù)據(jù)觀察
6.python主題lda建模和t-sne可視化
7.r語(yǔ)言中對(duì)文本數(shù)據(jù)進(jìn)行主題模型topic-modeling分析
8.主題模型:數(shù)據(jù)聆聽(tīng)人民網(wǎng)留言板的那些“網(wǎng)事”
9.python爬蟲(chóng)進(jìn)行web抓取lda主題語(yǔ)義數(shù)據(jù)分析
?
R語(yǔ)言文本挖掘使用tf-idf分析NASA元數(shù)據(jù)的關(guān)鍵字的評(píng)論 (共 條)
