如何在R中基於特定列的組值刪除資料框的行?
如果我們在R資料框中有一個分組列,並且我們認為其中一個組值對我們的分析沒有用,那麼我們可能希望刪除包含該值的所有行,然後繼續進行分析。也可能某個值重複出現,我們希望去除它。在這種情況下,我們可以使用否定和單方括號進行資料框的子集選擇。
示例
set.seed(1212) x<-sample(LETTERS[1:3],20,replace=TRUE) y<-rpois(20,5) df<-data.frame(x,y) df
輸出
x y 1 A 6 2 A 3 3 C 4 4 B 4 5 B 8 6 A 5 7 A 9 8 A 6 9 C 5 10 A 7 11 B 3 12 C 4 13 A 4 14 B 7 15 B 2 16 B 5 17 A 5 18 A 5 19 C 7 20 A 5
刪除x列中包含A的行 −
示例
df[!df$x=='A',]
輸出
x y 1 B 7 4 B 4 5 C 7 6 B 2 8 C 5 10 B 7 12 C 3 13 C 6 14 C 5 16 C 4 17 B 5 19 B 7
刪除x列中包含B的行 −
示例
df[!df$x=='B',]
輸出
x y 2 A 3 3 A 4 5 C 7 7 A 5 8 C 5 9 A 5 11 A 5 12 C 3 13 C 6 14 C 5 15 A 4 16 C 4 18 A 2 20 A 11
刪除x列中包含C的行 −
示例
df[!df$x=='C',]
輸出
x y 1 B 7 2 A 3 3 A 4 4 B 4 6 B 2 7 A 5 9 A 5 10 B 7 11 A 5 15 A 4 17 B 5 18 A 2 19 B 7 20 A 11
刪除y列中包含3的行 −
示例
df[!df$y==3,]
輸出
x y 1 B 7 3 A 4 4 B 4 5 C 7 6 B 2 7 A 5 8 C 5 9 A 5 10 B 7 11 A 5 13 C 6 14 C 5 15 A 4 16 C 4 17 B 5 18 A 2 19 B 7 20 A 11
刪除y列中包含7的行 −
示例
df[!df$y==7,]
輸出
x y 2 A 3 3 A 4 4 B 4 6 B 2 7 A 5 8 C 5 9 A 5 11 A 5 12 C 3 13 C 6 14 C 5 15 A 4 16 C 4 17 B 5 18 A 2 20 A 11
刪除y列中包含5的行 −
示例
df[!df$y==5,]
輸出
x y 1 B 7 2 A 3 3 A 4 4 B 4 5 C 7 6 B 2 10 B 7 12 C 3 13 C 6 15 A 4 16 C 4 18 A 2 19 B 7 20 A 11
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP