だから、これから飛び降りる簡単な質問....
この置換を行いたいが、データ フレームの特定の行に対してのみ行う場合、次の行指定を追加する方法はありますか。
df [df<0] =0
これを行 40 ~ 52 に適用するようなもの (機能しません):
df[df[40:52,] < 0] = 0
助言がありますか?とても有難い。
だから、これから飛び降りる簡単な質問....
この置換を行いたいが、データ フレームの特定の行に対してのみ行う場合、次の行指定を追加する方法はありますか。
df [df<0] =0
これを行 40 ~ 52 に適用するようなもの (機能しません):
df[df[40:52,] < 0] = 0
助言がありますか?とても有難い。
または単に:
df[40:52,][df[40:52,] < 0] <- 0
ここにテストがあります:
test = data.frame(A = c(1,2,-1), B = c(4,-8,5), C = c(1,2,3), D = c(7,8,-9))
#> test
# A B C D
#1 1 4 1 7
#2 2 -8 2 8
#3 -1 5 3 -9
行 2 と行 3 のみの負の値を 0 に置き換えるには、次のようにします。
test[2:3,][test[2:3,] < 0] <- 0
そしてあなたは得る
#> test
# A B C D
#1 1 4 1 7
#2 2 0 2 8
#3 0 5 3 0
これは、R のリサイクル動作を利用する別の方法です。
df[df < 0 & 1:nrow(df) %in% 40:52] <- 0