最近我正在處理1GB json格式的文件,使用fromJSON函數將其轉換爲長度大約爲4百萬的列表後,我想刮掉列表中的一個特定元素。 我的列表看起來像這樣(tweets.list是我的列表的名稱,與4132406長度),如何提高抓取列表元素的向量的速度? (大數據)
> tweets.list[[1]]
$`_id`
[1] "371045756826050561"
$text
[1] "RT @arabic_Leos: لو #الأسد في حالة إعجاب، تجده يتحدث عن الشخص طول الوقت، يفكر به ويكتب عنه يبحث عن صفحاته في النت ويدمن عليه، لذا احتمالية …"
$created_at
[1] "Fri Aug 23 23:06:16 +0000 2013"
現在我只希望在列表中的每一個「created_at」的價值,因此我的代碼如下:
tweets.unlist<-unlist(tweets.list)
create.date<-0
for(i in 1:(length(tweets.unlist)/3)){
create.date[i]<-tweets.unlist[3*i]
}
我已經奔波這段代碼24小時,似乎無止境的,我不知道是否有任何更快,足夠簡單的替代品做到這一點?由於我也需要在將其轉換爲所需格式後進行一些分析,因此我期待着一種通用解決方案,它不僅可以提高轉換速度,還可以提高整體計算速度。謝謝大家!
嘗試'lapply(tweets.list,'[[','created_at')' –
哇,這是一個非常意想不到的方法!永遠不會知道我可以用這種方式,我會嘗試,謝謝! –
它耗費我大約10秒!太棒了!再次感謝你!!! –