我有一組包含多個變量的數據。其中一個變量 - 階乘包含組的名稱 - A,B,C等。其餘變量是數字。R:以預定的出現頻率和因子的自動更新級別刪除變量(因子)的行
> data1
Group Value
1 A 23
2 A 25
3 B 1
4 C 15
5 C 11
6 C 14
7 B 3
8 B 4
9 B 2
10 C 19
對於進一步的統計計算欲從所述數據組包含該基團中的次數據幀的n個發現了一個特定的基團(例如,X),其條件行排除(例如,少於2次)。
我以前見過的材料主要關注刪除具有特定值的行,並且與數據框中組(因子)的出現頻率無關。也許我錯了?抱歉!
要在「手動」模式中刪除特定的行,我使用以下代碼:
data1 <- as.data.frame(
lapply(subset(data1, !Group=="A"),
function(x) if(is.factor(x)) factor(x) else x
)
)
我想這個過程自動化,並且排除各級因子(組)具有預定的發生:
> data1
Group Value
1 B 1
2 C 15
3 C 11
4 C 14
5 B 3
6 B 4
7 B 2
8 C 19
加成
先生Akrun「帶來的主意,用下面的代碼:
tbl <- table(data1$Group)
data1 <- subset(data1, Group %in% names(tbl)[tbl>2])
這就是你需要的!我爲此感謝他! 但是,rezltate因子水平保持不變。要糾正這種情況,我不得不使用該記錄:
data1$Group = factor(data1$Group)
肯定有現成的解決方案考慮到這種情況?
啊,只是打敗了我。不錯的一個 –
優秀的東西。其作品!謝謝! –