基于固定效应回归模型统计各ID上下样本点数量的data.table构建方法
基于data.table的实现方法
你已经计算好了每个样本对应的above逻辑标识,直接按ID分组统计即可,完整代码如下:
# 加载data.table包 library(data.table) # 转换原数据为data.table格式,同时绑定已计算的above标识 dt <- as.data.table(data) dt[, above := above] # 按ID分组统计上下方样本数量 res <- dt[, .( above = sum(above), below = .N - sum(above) ), by = ID] # 查看结果 print(res)
逻辑说明
- R中逻辑值
TRUE默认等价于数值1,FALSE等价于0,对above列求和即可直接得到该ID下回归线上方的样本总数 - 分组参数
.N代表当前ID对应的总样本数,减去上方样本数即可得到下方样本数 - 如果数据存在缺失值,可在
sum函数中加入na.rm = TRUE参数过滤缺失值:sum(above, na.rm = TRUE)
内容的提问来源于stack exchange,提问作者codemachino
相关产品推荐
相关产品推荐

