2016-07-06 8 views
0

私はこのR言語で1列に統計文字列を入れる方法は?

enter image description here

のようなテーブルを持っている今、私はK1の周波数、K2、K3 ...コラム "キーワード" での統計たいです。これどうやってするの。

は私が

ファイル

は500行を持っている「文字列」

ファイルリンクwl.csv(中国語)のようなパッケージを使用します。各行は紙です。すべての論文には1〜3個のキーワードがあります。キーワードの頻度を統計したい

+1

1.郵便実際のコード。 2.あなたは何を試しましたか? 3. "string"というパッケージはありません。 – nrussell

+0

1.ファイルはhttps://www.dropbox.com/s/cg0fat3onxsqrbj/wl.csv?dl=0です。2.私は頻度をカウントするために "テーブル"を使用して、失敗しました。 –

答えて

0

あなたはこのためにすべてのパッケージを必要としません。また、stringというパッケージはありません。 stringrを考えていましたか?

strsplit,tableおよびunlistを使用すると、すべての観測で頻度カウントを取得できます。

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)) 
関連する問題