我需要创建一个数据集的子集,该子集只包括疟疾=0和1(而不是2)的鸟类,并从模型中排除IIWI。
我试过这个:
datPox2 <- subset(datPox, Malaria = 0 & 1)
datPox2
但这并没有消除疟疾专栏中的2个。我也不知道如何在排除一个物种的同时留下其他三个物种。
以下是我的数据示例:
Site Species Bandno Date Sex Age Oldpox Activepox Malaria Elev
1 AIN APAP 159174793 7/22/2004 U H 0 0 2 mid
2 AIN APAP 159174964 7/6/2004 M H 0 1 2 mid
3 AIN HAAM 165180406 3/1/2002 M A 0 0 0 mid
4 AIN HAAM 165180406 7/2/2003 M A 0 0 1 mid
5 AIN JAWE 224018088 6/18/2002 U H 0 0 2 mid
6 AIN JAWE 224018089 6/18/2002 U H 0 0 2 mid
7 KUL IIWI 151129162 4/29/1993 M H 0 0 0 high
8 KUL IIWI 151129162 10/8/1993 M H 0 0 0 high
9 KUL IIWI 151129162 3/7/1994 M A 0 0 0 high
10 KUL IIWI 151129162 4/6/1994 M A 0 0 0 high
dplyr版本
library(dplyr)
datPox %>%
filter(Malaria != 2)
Site Species Bandno Date Sex Age Oldpox Activepox Malaria Elev
3 AIN HAAM 165180406 3/1/2002 M A 0 0 0 mid
4 AIN HAAM 165180406 7/2/2003 M A 0 0 1 mid
7 KUL IIWI 151129162 4/29/1993 M H 0 0 0 high
8 KUL IIWI 151129162 10/8/1993 M H 0 0 0 high
9 KUL IIWI 151129162 3/7/1994 M A 0 0 0 high
10 KUL IIWI 151129162 4/6/1994 M A 0 0 0 high
基本R版本
datPox[datPox$Malaria != 2,]
Site Species Bandno Date Sex Age Oldpox Activepox Malaria Elev
3 AIN HAAM 165180406 3/1/2002 M A 0 0 0 mid
4 AIN HAAM 165180406 7/2/2003 M A 0 0 1 mid
7 KUL IIWI 151129162 4/29/1993 M H 0 0 0 high
8 KUL IIWI 151129162 10/8/1993 M H 0 0 0 high
9 KUL IIWI 151129162 3/7/1994 M A 0 0 0 high
10 KUL IIWI 151129162 4/6/1994 M A 0 0 0 high
排除IIWI
datPox %>%
filter(Malaria != 2, Species != "IIWI")
Site Species Bandno Date Sex Age Oldpox Activepox Malaria Elev
3 AIN HAAM 165180406 3/1/2002 M A 0 0 0 mid
4 AIN HAAM 165180406 7/2/2003 M A 0 0 1 mid