如果找到提供的分組值之一,並且數值列值大於某個值,如何對 R 資料框進行子集化?
子集化是一種常用的技術,根據分析的目標,它可以用於許多不同的目的。如果找到提供的分組值之一,則對資料框進行子集化,這意味著如果分類變數中的任何值存在於分類列中,我們都希望進行子集化,並且如果我們想要包含大於某個值的數值列,則需要遵循以下步驟 -
- 建立資料框。
- 如果分類變數的任何提供的數值存在並且數值列值大於某個值,則對資料框進行子集化。
建立資料框
讓我們建立一個如下所示的資料框 -
x<-rnorm(20)
Factor<-sample(c("Male","Female","Unknown"),20,replace=TRUE)
df<-data.frame(x,Factor)
df執行後,上述指令碼會生成以下輸出(由於隨機化,此輸出會在您的系統上有所不同) -
x Factor 1 -0.83268524 Female 2 1.66904204 Male 3 0.26228885 Unknown 4 0.42511920 Male 5 0.67910328 Female 6 -0.82505888 Female 7 -0.06084790 Male 8 0.56949099 Unknown 9 0.79874121 Female 10 -0.09112936 Unknown 11 -1.04839717 Male 12 -1.24128634 Unknown 13 1.51186118 Unknown 14 -0.79498005 Unknown 15 0.18607842 Male 16 -0.60505867 Female 17 1.24925658 Male 18 1.14835757 Male 19 -0.24867122 Female 20 0.59079712 Unknown
對資料框進行子集化
載入 dplyr 包,如果 Factor 列中存在 Male 或 Female,並且 x 大於 0.5,則對 df 進行子集化 -
library(dplyr)
x<-rnorm(20)
Factor<-sample(c("Male","Female","Unknown"),20,replace=TRUE)
df<-data.frame(x,Factor)
df %>% filter(x>0.5,Factor=="Male"|Factor=="Female")輸出
x Factor 1 1.6690420 Male 2 0.6791033 Female 3 0.7987412 Female 4 1.2492566 Male 5 1.1483576 Male
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP