4
子集化data.frame或vector時,是否保證相同的子集調用返回相同的值/行順序,無論調用的次數是多少?R - 是否保證在重複調用中返回相同值的子集?
子集化data.frame或vector時,是否保證相同的子集調用返回相同的值/行順序,無論調用的次數是多少?R - 是否保證在重複調用中返回相同值的子集?
對於一個向量,肯定是的。從子集的文檔:
對於普通向量,結果只是
x[subset & !is.na(subset)]
。
對於數據幀,同樣看起來是真的,因爲子集只是作爲一個向量有效地應用到每一行。例如,以下將始終僅返回b
列的d
的條目,其相應的a
值大於5.不會發生行的重新排序。
d <- data.frame(a=1:10, b=20:29)
subset(d, a>5, b)