以下に示すようなサンプルデータセットがあります
sampDate <- as.Date(c("2011-09-01","2011-09-02","2011-09-03","2011-09-04","2011-09-05", "2011-09-06"), format ="%Y-%m-%d")
p1 <- c( 10, 6.1, 11.1, 9.1, 10.1, 7)
p2 <- rep(1,6)
df <- data.frame(sampDate,p1,p2);df
sampDate p1 p2
1 2011-09-01 10.0 1
2 2011-09-02 6.1 1
3 2011-09-03 11.1 1
4 2011-09-04 9.1 1
5 2011-09-05 10.1 1
6 2011-09-06 7.0 1
結果のデータフレームが次のようになるように、2011-09-01 から 2011-09-03 までの列 p2 の 1 を代わりにゼロに置き換えたいと思います。
sampDate p1 p2
1 2011-09-01 10.0 0
2 2011-09-02 6.1 0
3 2011-09-03 11.1 0
4 2011-09-04 9.1 1
5 2011-09-05 10.1 1
6 2011-09-06 7.0 1
および他のインデックス演算子を使用しようとしifelse
ましたが、レンガの壁にぶつかっています。データセットが大きいため、インデックス作成方法があれば最適です。