我是研究COVID-19数据集的研究人员(可从欧洲CDC公开获得)。我正在尝试让R计算“累计案件”变量,该变量将“ dateRep”从特定国家/地区的所有先前日期加起来的总案件数。请参阅随附的Excel屏幕截图。关于如何在R中进行编码和计算有任何想法吗?谢谢,我非常感谢!
答案 0 :(得分:1)
使用data.table,其中您的数据帧被称为df1
,首先将其转换为data.table,然后使用cumsum()
函数by(并按其排序,因为我已经使用过{{1 }},而不是keyby =
)国家。
by =
Data.tables基于基本的R data.frame数据结构,但提供了改进的功能,效率和速度。 Data.table注释使用library(data.table)
setDT(df1)
dt1[, cases_cumulative := cumsum(cases), keyby = countriesAndTerritories]
-非常简单的做法是在DT[i,j,by]
上进行子集设置或排序,然后选择或进行i
分组的j
。
或者使用tidyverse,使用by
和group_by()
:
mutate()