【发布时间】:2015-06-23 04:59:41
【问题描述】:
我正在开展一个项目,我需要找到一些社交活动的影响范围。我想知道有多少人在丹麦的一个名为 Tinderbox 的节日上接触了 cmets。 我所做的是在 Twitter 上获取状态,包括丹麦语中的“tinderbox”一词。然后我想从这些网名中提取关注者的数量。所以我的代码的第一部分由以下给出:
library("twitteR")
setup_twitter_oauth(consumer_key,consumer_secret,access_token,access_secret)
1
#get data
TB<-searchTwitter("tinderbox", lan="da", n=10000)
#put into a dataframe
df <- do.call("rbind", lapply(TB, as.data.frame))
我的想法是使用与下面示例相同的输出,即 直接从 twitter 数据中获取 followerCount。 该示例可在 stackoverflow 上找到。但我不知道该怎么做才能解决我的目的(fetching large number of followers and followees in R)
library(twitteR)
user <- getUser("krestenb")
followers <- user$getFollowers()
b <- twListToDF(followers)
f_count <- as.data.frame(b$followersCount)
u_id <- as.data.frame(b$id)
u_sname <- as.data.frame(b$screenName)
u_name <- as.data.frame(b$name)
final_df <- cbind(u_id,u_name,u_sname,f_count)
sort_fc <- final_df[order(-f_count),]
colnames(sort_fc) <- c('id','name','s_name','fol_count')
我的问题是,我不能通过从 df$screenName 中提取屏幕名称列表来简单地在关注者
所以我的想法是,也许我需要对所有不同的屏幕名称进行循环。但我不知道该怎么做。
我知道我已经描绘了我想要得到的东西,以及我是如何想/认为我可以到达那里的。
由于节日将于本周末举行,因此非常感谢您的帮助。
【问题讨论】:
-
我没有在我的本地机器上配置 OAuth,所以我不能使用你的代码。但我可以告诉你,在 R 中“避免”使用循环的典型方法是使用
apply函数之一。您可以定义一个用户向量,然后使用apply()对其进行迭代。 -
感谢您的快速回复。我仍然是 R 的新手——最近才开始将它用于其他东西,而不仅仅是制作统计模型。因此,如果您能在上面给出的代码中输入一些关于如何使用应用函数的示例代码,我将不胜感激。