R 語言中subset()函數使用


R語言中的subset()應用

> Datafra <- data.frame(name=c(1,2,4,NA,4,5,7),family=c("xiao","ming",NA,NA,"zhou","zheng","li"))
> Datafra
  name family
1    1   xiao
2    2   ming
3    4   <NA>
4   NA   <NA>
5    4   zhou
6    5  zheng
7    7     li
##選出name列大一等於一的行
> subset(Datafra,name >= 1)
  name family
1    1   xiao
2    2   ming
3    4   <NA>
5    4   zhou
6    5  zheng
7    7     li
#由於family中有NA,因此去掉有NA的行
> subset(Datafra,name >= 1&family != "NA")
  name family
1    1   xiao
2    2   ming
5    4   zhou
6    5  zheng
7    7     li

也可以使用select參數選擇指定的列

> subset(Datafra,name >= 1&family != "NA",select = 1)
  name
1    1
2    2
5    4
6    5
7    7
#只選擇符合篩選條件的第一列

以上是subset函數在結合data.frame進行條件篩選時的常見用法

subset函數還可以用在向量上,其實這從上面的用法中也能夠推導出來,例如:

> vec  <- c(1,2,3,4,NA,3,NA,NA)
> subset(vec , vec > 2)
[1] 3 4 3
#可以看出用subset函數進行篩選時,篩選過程中會自動忽略掉NA值,這是個很方便的去掉NA值的特性

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM