0
假设排除数据集中观察到有:选择数据,并通过dplyr
x<-c(1,2,3,1)
y<-c(2,NA,1,1)
我想创建以下文件:
z<-c(2,2,3,1)
即选择较大的值,不包括NA先验并保持如果x和y相等,则值相同。
有没有办法在dplyr中做到这一点?
假设排除数据集中观察到有:选择数据,并通过dplyr
x<-c(1,2,3,1)
y<-c(2,NA,1,1)
我想创建以下文件:
z<-c(2,2,3,1)
即选择较大的值,不包括NA先验并保持如果x和y相等,则值相同。
有没有办法在dplyr中做到这一点?
我们可以在dplyr
library(dplyr)
tibble(x, y) %>%
transmute(xy = pmax(x, y, na.rm = TRUE)) %>%
pull(xy)
#[1] 2 2 3 1
使用pmax
或者另一种选择是reduce
library(purrr)
list(x, y) %>%
reduce(pmax, na.rm = TRUE)
#[1] 2 2 3 1
'P最高(X,Y,na.rm = TRUE)'。 – lmo
以及'dplyr':data.frame(x = x,y = y)%> mutate(z = pmax(x,y,na.rm = TRUE)) –