with(x_in
[
(x_in$Power_KW < 1700 & x_in$Power_KW > 1550)
# & x_in$Power_KW > 0 This is redundant
& x_in$Power_KW < x_in$Expected_Power_KW*1.1
& x_in$Power_KW > x_in$Expected_Power_KW*.9
& x_in$Wind_Speed_ > 12
,],
plot(x_in$Wind_Speed_, x_in$Power_KW ,col="gray48"
,main= titlename, col.main = "black", cex=.5,pch=16
,col.lab="black",col.axis = 'black',cex.lab=1.25
,xlim=c(0, 25), ylim=c(0, 1800))
)
Поскольку вы сказали, что условия должны применяться вместе, мы можем просто добавить их все вместе как & условия.
EDIT:
Я предполагаю, что ваш первый набор фильтров правильный, и вам нужно дополнительно отфильтровать некоторые строки на основе новых условий, которые вы упомянули.
x_filtered <- x_in
[
x_in$Power_KW < 1700
& x_in$Power_KW > 0
& x_in$Power_KW < x_in$Expected_Power_KW*1.1
& x_in$Power_KW > x_in$Expected_Power_KW*.9
,]
На этом промежуточном кадре data.frame мы можем применить дополнительный фильтр:
x_final <- x_filtered[(x_filtered$Wind_Speed_ < 12) |
(x_filtered$Wind_Speed_ > 12 & x_filtered$Power_KW > 1550), ]
Вы можете сделать это за один раз так:
x_final <- x_in
[
x_in$Power_KW < 1700
& x_in$Power_KW > 0
& x_in$Power_KW < x_in$Expected_Power_KW*1.1
& x_in$Power_KW > x_in$Expected_Power_KW*.9
,][(x_filtered$Wind_Speed_ < 12) |
(x_filtered$Wind_Speed_ > 12 & x_filtered$Power_KW > 1550), ]