【发布时间】:2015-03-18 17:41:26
【问题描述】:
我有一个非常大的数据集,包含大约 3000 个观察值和 121 个变量。每个观察都包含有关电话的信息。每个设备都有一个唯一的 IMEI,并且数据集中有重复的 IMEI,因为一个设备可能有多个电话。
此数据最初是多个文件中的 JSON 格式。每一行都是一个单独的文件,所以我使用这个脚本使用 jsonlite pckg 导入 JSON 对象,然后使用 rbind 将它们全部绑定到一个大矩阵中,然后我使用 as.data.frame( ) 函数。
require(jsonlite)
files <- list.files()
DF <- NULL
for (f in files) {
DF <- rbind(DF, fromJSON(f))
}
DF<- as.data.frame(DF)
但是,我想根据每个 UNIQUE IMEI 总结数据。
例如:
IMEI 123456789 有 10 个条目,变量为 call_duration、signal_strength、battery_level。我想将 10 个条目总结为一个条目,将 call_duration 相加,并平均 signal_strength 和 battery_level,因此结果将是:
IMEI call_duration(sum) signal_strength(mean) battery_level(mean)`
123456789 1982 65 42
非常感谢。
【问题讨论】:
-
你可以试试
library(data.table); setDT(df1)[, list(call_duration=sum(call_duration), signal_strength=mean(signal_strength), battery_level=mean(battery_level)), by=IMEI][] -
感谢您的输入,但我收到一条错误消息:“by”或“keyby”列表中的项目长度为 (1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
您应该提供一些数据集的行,这些行会导致错误。
标签: r analytics analysis modeling