我Data Frame看起来像这个例子的前三列:
id obs value newCol
a 1 uncool NA
a 2 cool 1
a 3 uncool NA
a 4 uncool NA
a 5 cool 2
a 6 uncool NA
a 7 cool 1
a 8 uncool NA
b 1 cool 0
Run Code Online (Sandbox Code Playgroud)
我需要的是一个列(上面的newCol),它计算值为"cool"的观察值或组的第一行(按id分组)之间的"uncool"数.
我该怎么做(通过dplyr理想使用)?
我的df看起来像这样:
ID Obs Value
1 1 26
1 2 13
1 3 52
2 1 1,5
2 2 30
Run Code Online (Sandbox Code Playgroud)
使用dplyr,我添加了附加列Col,这是列值中所有值除以该列中组的第一个值的结果。
ID Obs Value Col
1 1 26 1
1 2 13 0,5
1 3 52 2
2 1 1,5 1
2 2 30 20
Run Code Online (Sandbox Code Playgroud)
我怎么做?