如何在 R 資料框的列中透過排除特定值來過濾行?
為了透過排除資料框列中的特定值來過濾行,我們可以使用 dplyr 包的 filter_all 函式以及 all_vars 引數,該引數將選擇除包含傳遞值(使用否定)的行以外的所有行。例如,如果我們有一個名為 df 的資料框,並且我們想要透過排除值 2 來過濾行,那麼我們可以使用以下命令:
df%>%filter_all(all_vars(.!=2))
示例
考慮以下資料框:
x1<-rpois(20,5) x2<-rpois(20,5) df1<-data.frame(x1,x2) df1
輸出
x1 x2 1 6 5 2 3 5 3 1 4 4 8 7 5 4 5 6 2 4 7 5 1 8 2 7 9 3 5 10 5 9 11 4 10 12 6 4 13 9 1 14 3 4 15 5 5 16 6 3 17 4 7 18 4 2 19 3 7 20 8 4
載入 dplyr 包並透過在所有列中排除 4 來過濾 df1 的行:
示例
library(dplyr) df1%>%filter_all(all_vars(.!=4))
輸出
x1 x2 1 6 5 2 3 5 3 8 7 4 5 1 5 2 7 6 3 5 7 5 9 8 9 1 9 5 5 10 6 3 11 3 7
示例
y1<-rpois(20,2) y2<-rpois(20,2) df2<-data.frame(y1,y2) df2
輸出
y1 y2 1 1 2 2 0 2 3 0 3 4 2 3 5 1 1 6 1 3 7 6 2 8 2 3 9 2 2 10 3 2 11 3 0 12 0 5 13 0 0 14 5 5 15 1 1 16 3 3 17 3 1 18 1 1 19 2 2 20 3 0
透過在所有列中排除 2 來過濾 df2 的行:
示例
df2%>%filter_all(all_vars(.!=2))
輸出
y1 y2 1 0 3 2 1 1 3 1 3 4 3 0 5 0 5 6 0 0 7 5 5 8 1 1 9 3 3 10 3 1 11 1 1 12 3 0
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP