使用twitteR包获取推文的位置

时间:2015-12-03 15:24:36

标签: r twitter

我正在使用twitteR包来提取R中的特定推文,我想生成一个空间地图。例如,某种疾病的推文地图。我怎样才能获得推文的位置? " searchTwitter"函数能够通过指定纬度,经度和搜索半径从某个位置提取,但我无法获得每条推文的纬度/经度位置。

一个简单的例子:

library("twitteR")
library(stringr)
ecoli2=searchTwitter("e. coli + e.coli",lang="en",n=25,since='2011-11-24')

然后,当我尝试提取推文的纬度和经度时,我得到了#34;字符(0)"如下图所示:

sapply(ecoli2, function(x) x$getLongitude())[1:3] # showing the first three
[[1]]
character(0)

[[2]]
character(0)

[[3]]
character(0)

2 个答案:

答案 0 :(得分:-1)

如果有人发现这有用,我使用以下函数来获取时间,纬度和经度:

ecoli=searchTwitter("e. coli + e.coli",lang="en",n=20000,since='2011-11-1',until ='2011-12-30',geocode='37,-96,2000mi')

ecolitext=sapply(ecoli, function(x) x$getText())
ecolilat=sapply(ecoli, function(x) as.numeric(x$getLatitude()))
ecolilon=sapply(ecoli, function(x) as.numeric(x$getLongitude()))
ecolidate=lapply(ecoli, function(x) x$getCreated())
ecolidate =sapply(ecolidate, function(x) as.character(as.Date(x)))

ecoli2=as.data.frame(cbind(tweet=ecolitext,date=ecolidate,lat=ecolilat,lon=ecolilon))

答案 1 :(得分:-1)

当我们尝试上面的代码时,获取经度,纬度值是数字(0),如何获取经度和纬度值代替数字(0)请给出解决方案。