我想创建一个带有条件的唯一字符的总和。
这是我的数据测试(.csv):
$ lot : Factor w/ 3 levels "lot1","lot4",..: 1 1 1 2 3
$ usl : int 2 2 3 1 2
$ site_value: int 1 6 1 2 4
lot usl site_value
lot1 2 1
lot1 2 6
lot1 3 1
lot4 1 2
lot5 2 4
我做了这个条件:
nbLotOOC<-sum(test$usl > test$site_value)
我的结果是2.但我会计算满足条件的批次数。我的结果应该是1.我不知道使用什么功能或方法。
答案 0 :(得分:2)
您可以找到满足条件的索引,选择批次列,查找唯一的出现次数,然后检查该向量的长度:
length(unique(test[test$usl > test$site_value, "lot"]))
答案 1 :(得分:2)
你可以这样做:
sum(aggregate(test$usl>test$site_value, list(test$lot), any)$x)
来自nicola的评论:
test <- read.table(header=TRUE, text=
"lot usl site_value
lot1 2 1
lot1 2 6
lot1 3 1
lot4 1 2
lot5 2 4")
.custom-date-field {
font-family: Arial, Sans-serif;
border: 1px solid #dddddd;
padding: 20px;
font-size: 12px;
margin-bottom: 30px;
}
.custom-date-field input {
background-color:#e4ebef;
border: none;
padding: 5px 10px;
}
.custom-date-field span {
display: block;
font-size: 12px;
}
.custom-date-field label {
width: 30%;
display: inline-block;
float: left;
font-size: 18px;
}