Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在R中进行条件替换?_R_Dplyr_Conditional - Fatal编程技术网

如何在R中进行条件替换?

如何在R中进行条件替换?,r,dplyr,conditional,R,Dplyr,Conditional,这是R中的一个简单条件问题。 这是一个示例数据帧。“”表示空格 >df A B 1 Y 1 N "" Y 0 N "" N 1 Y 0 Y "" N 0 Y 我试图检查df$B==“Y”,然后在df$A的空白处打印1 我试过df$A[df$A==“”]这就是你想要的吗 library("dplyr") library("tibble")

这是R中的一个简单条件问题。
这是一个示例数据帧。“”表示空格

>df  
    A   B  
    1   Y  
    1   N  
    ""  Y  
    0   N  
    ""  N  
    1   Y  
    0   Y  
    ""  N  
    0   Y
我试图检查df$B==“Y”,然后在df$A的空白处打印1


我试过
df$A[df$A==“”]这就是你想要的吗

library("dplyr")
library("tibble")

df <- 
tibble::tribble(
  ~A,   ~B,
  1,  "Y",
  1,  "N",
  "",  "Y",
  0,  "N",
  "",  "N",
  1,  "Y",
  0,  "Y",
  "",  "N",
  0,  "Y")

df %>% mutate(A = ifelse(B == "Y" & A == "",1,A))
#> # A tibble: 9 x 2
#>       A     B
#>   <chr> <chr>
#> 1     1     Y
#> 2     1     N
#> 3     1     Y
#> 4     0     N
#> 5           N
#> 6     1     Y
#> 7     0     Y
#> 8           N
#> 9     0     Y
库(“dplyr”)
图书馆(“tibble”)
df%变异(A=ifelse(B==“Y”&A==“1,A))
#>#tibble:9 x 2
#>A B
#>    
#>1年
#>21牛顿
#>31岁
#>40N
#>5N
#>61岁
#>70岁
#>8N
#>90岁
这是一个基本版本:

df$A <- ifelse(df$B == "Y" & df$A == "",1,df$A)
df$A