2017-12-16 7 views
0

twitteR 라이브러리를 사용하고 있습니다. 내 임무는 꼭지점이 사용자 이름 인 그래프를 만들고, 두 명의 사용자가 같은 위치에있는 경우 그 둘 사이에 가장자리가 있습니다. 이것은 내가 사용자twitteR - 위치를 기반으로 사용자 그래프 구성

search_result <- searchTwitter("#my_hashtag", 500) 
tags <- twListToDF(search_result) 
users <- tags$screenName 
df <- twListToDF(lookupUsers(users)) 

내가 R에 새로 온 사람을 수집하는 데 사용되는 코드는, 그래서이 작업은 매우 간단하다 생각하지만 난 가장자리를 대표 할 사용자의 쌍을 생성하는 구문 부족 그래프의

귀하의 도움에 감사드립니다! :)

감사합니다.

답변

0

잠시 생각한 후에 이것이 가장 간단한 방법이라고 생각합니다. 나는 마지막 지점에서 당신의 본보기를 따른다. 다음 단계는 사용자 이름과 위치 만 유지하는 것입니다. 우리는 'dplyr'을 사용하여 필요한 edgelist 행렬을 만들고, 그래프에서 루프를 피하기 위해 loopsFALSE으로 설정하고 directed = FALSE을 설정합니다. 반대는 의미가 없습니다. 우리가 그것을 완료하면 패키지의 availables의 그래프를 만들 수 있습니다 :

library(tidyverse) 
library("statnet") 
p <- df[,c("name", "location")] 

inner_join(p,p, by="location") %>% 
    select(name.x, name.y) -> gr 

n <- network(gr, matrix.type="edgelist", loops = F, directed = F) 
gplot(n,usearrows = F) 

나는 단지 네트워크를 간단하게하기 위해, 내뿐만 아니라, 사용자의 몇 가지를 사용했다. 두가 연결되어 있고 다른 하나는 아니다됩니다

enter image description here

HTH!