我已经以json格式下载了推文,将其转换为csv,并将其读入R.现有的时间戳采用因子格式,如下所示。我应该如何将其转换为可以对其进行绘制的时间戳?
[1] Fri May 09 07:55:12 +0000 2014 Fri May 09 07:55:12 +0000 2014 Fri May 09 07:55:12 +0000 2014
[4] Fri May 09 07:55:12 +0000 2014 Fri May 09 07:55:12 +0000 2014 Fri May 09 07:55:12 +0000 2014
516 Levels: Fri May 09 07:55:12 +0000 2014 ... Fri May 09 09:15:07 +0000 2014
答案 0 :(得分:2)
我认为您的问题已经回答=> Convert Twitter Timestamp in R
但是如果你想要更简单,你可以使用twitteR库。
> tweets <- userTimeline("BarackObama",n=100)
> df <- do.call("rbind",lapply(tweets, as.data.frame))
> names(df)
[1] "text" "favorited" "favoriteCount" "replyToSN" "created" "truncated"
[7] "replyToSID" "id" "replyToUID" "statusSource" "screenName" "retweetCount"
[13] "isRetweet" "retweeted" "longitude" "latitude"
我们可以直接绘制创建的状态日期
答案 1 :(得分:1)
在应用as.POSIXct
之前,您可以删除字符串中不必要的部分。这可以通过gsub
:
x <- as.factor(c("Fri May 09 07:55:12 +0000 2014",
"Fri May 09 07:55:12 +0000 2014"))
as.POSIXct(gsub("^.+? | \\+\\d{4}","", x),
format = "%b %d %X %Y")
# [1] "2014-05-09 07:55:12 CEST" "2014-05-09 07:55:12 CEST"