3
我有一個數據幀「df」。我想從條件語句中創建兩個子集(a & b),比如變量「x」的值大於10.在SAS中,這將是類似於: data a, b; set df; if x>10 then output a; else output b
。 有沒有辦法在R中做到這一點?R中的條件子集
我有一個數據幀「df」。我想從條件語句中創建兩個子集(a & b),比如變量「x」的值大於10.在SAS中,這將是類似於: data a, b; set df; if x>10 then output a; else output b
。 有沒有辦法在R中做到這一點?R中的條件子集
你可以使用split
:
subs <- split(df,df$x>10)
a <- subs[[1]]
b <- subs[[2]]
分裂的第二個參數需要一個因素,所以你可以使用更復雜的語句來提供更多的分割。
假設DF是數據幀和x是一個data.frame內的變量:
sel <- (x > 10)
a <- DF[ sel, ]
b <- DF[ !sel, ]