次のような2列のデータフレームがあります。
> data.frame(x=1:10, y=c(0,0,0,1,1,0,0,1,0,1))
x y
1 1 0
2 2 0
3 3 0
4 4 1
5 5 1
6 6 0
7 7 0
8 8 1
9 9 0
10 10 1
列x
(cumsum(df$x)
)の累積合計を取得したいのです1
が、列にが表示された後、合計をリセットする必要がありますy
。これは私が探している結果です:
1
3
6
10
5
6
13
21
9
19
Rでこれをどのように達成できますか?
あなたはそれを使用することによってそれを達成することができますave
:
ave(d$x,c(0,cumsum(d$y[-nrow(d)])),FUN=cumsum)
# [1] 1 3 6 10 5 6 13 21 9 19
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加