いくつかのツイートからすべてのハッシュタグを抽出し、ツイートごとにすべてのハッシュタグを含む単一の文字列を取得しようとしています。str_extract
fromを使用しstringr
ているので、文字ベクトルのリストを取得します。私の問題は、それをリストから外して、リストの同じ数の要素 (つまり、ツイートの数) を維持することができないことです。例:
これは、長さ 3 のつぶやきのベクトルです。
a <- "rt @ugh_toulouse: #mondial2014 : le top 5 des mannequins brésiliens http://www.ladepeche.fr/article/2014/06/01/1892121-mondial-2014-le-top-5-des-mannequins-bresiliens.html #brésil "
b <- "rt @30millionsdamis: beauté de la nature : 1 #baleine sauve un naufragé ; elles pourtant tellement menacées par l'homme... http://goo.gl/xqrqhd #instinctanimal "
c <- "rt @onlyshe31: elle siège toujours!!!!!!! marseille. nouveau procès pour la députée - 01/06/2014 - ladépêche.fr http://www.ladepeche.fr/article/2014/06/01/1892035-marseille-nouveau-proces-pour-la-deputee.html #toulouse "
all <- c(a, b, c)
今、私str_extract_all
はハッシュタグを抽出するために使用します:
ex <- str_extract_all(all, "#(.+?)[ |\n]")
今使用するunlist
と、長さ 5 のベクトルが得られます。
undesired <- unlist(ex)
> undesired
[1] "#mondial2014 " "#brésil "
[3] "#baleine " "#instinctanimal "
[5] "#toulouse "
私が欲しいのは、次のようなものです。ただし、これはベクトル化されていないため非常に非効率的であり、つぶやきの小さなデータ フレームでは永遠に (本当に!) 時間がかかります。
desired <- c()
for (i in 1:length(ex)){
desired[i] <- paste(ex[[i]], collapse = " ")
}
> desired
[1] "#mondial2014 #brésil "
[2] "#baleine #instinctanimal "
[3] "#toulouse "
ヘルプ!