如何使用逻辑条件对数据进行子集化。
假设我有如下数据。我想对数据集进行子集化,第一个条件是所有动物都有 FCR 记录,然后我想将所有动物与新数据集中的这些动物放在同一个围栏中。
animal Feed Litter Pen
1 0.2 5 3
2 NA 5 3
3 0.2 5 3
4 0.2 6 4
5 0.3 5 4
6 0.3 4 4
7 0.3 5 3
8 0.3 5 3
9 NA 5 5
10 NA 3 5
11 NA 3 3
12 NA 3 5
13 0.4 7 3
14 0.4 7 3
15 NA 7 5
我假设“FCR 记录”(在你的问题中)与“Feed”相关。然后,如果我正确理解了这个问题,你可以这样做:
split(df[complete.cases(df),], df[complete.cases(df), 4])
# $`3`
# animal Feed Litter Pen
# 1 1 0.2 5 3
# 3 3 0.2 5 3
# 7 7 0.3 5 3
# 8 8 0.3 5 3
# 13 13 0.4 7 3
# 14 14 0.4 7 3
#
# $`4`
# animal Feed Litter Pen
# 4 4 0.2 6 4
# 5 5 0.3 5 4
# 6 6 0.3 4 4
在上文中,complete.cases
删除任何不完整的观察结果。如果您需要匹配特定变量的参数,您可以使用类似df[!is.na(df$Feed), ]
代替complete.cases
. Then, split
创建一个列表data.frames
分割为Pen
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)