2016-07-06 85 views
0

我有一個表像這樣如何用R語言統計一列中的字符串?

enter image description here

現在我要來統計K1,K2的頻率,K3 ......在列「關鍵詞」。我怎樣才能做到這一點。

我想使用的軟件包,如「串」

文件鏈接wl.csv(中國語)

的文件有500行。每一行都是一張紙。每篇論文都有1〜3個關鍵詞。我想統計關鍵字的頻率。

+1

1.在你的問題,而不是屏幕截圖張貼實際的代碼; 2.你嘗試過什麼? 3.沒有包稱爲「字符串」。 – nrussell

+0

1.該文件爲https://www.dropbox.com/s/cg0fat3onxsqrbj/wl.csv?dl=0 2.我使用「表」來計算頻率,失敗。 –

回答

0

你不需要這方面的任何包。此外,沒有像string這樣的軟件包。你在想stringr嗎?

您可以使用strsplit,tableunlist來獲得所有觀測值的頻率計數。

df <- data.frame(title=c("A","B","C"),keywords=c("k1;k2;k3","k4;k1","k1;k2"),stringsAsFactors=FALSE) 

list_of_keywords <- strsplit(df$keywords,";") 
table(unlist(list_of_keywords)) 

結果將是:

k1 k2 k3 k4 
3 2 1 1 
-1

如果df是您的數據框:

df <- data.frame(Title = paste0("title",toupper(letters[1:7])), 
       keywords = c("k1;k2;k3", "k4;k1", "k1;k2", "k3;k4", "k2", "k5", "k4;k2;k5")) 


library(dplyr) 
library(stringr) 
temp <- df$keywords %>% str_split(";") 

# Obtain the frequency by flattening the list and using the table function 
table(unlist(temp)) 
相關問題