Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.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_Case When - Fatal编程技术网

在R时,如果不符合标准,如何保持单元格的原始值?

在R时,如果不符合标准,如何保持单元格的原始值?,r,case-when,R,Case When,我希望mutate在所有编辑过的单元格值上运行:在DF中有多个列,如果它不符合case_when的任何标准,则保留原始数据。 例如 当..==hi~1时变异~case_, 你好~2, T~保持原值 如果只为一列运行case\u,则可以在TRUE中引用列名本身~ 如果要对多个列运行此操作,并且带有mutate_at/cross,则可以使用 非常感谢。我有多个列,大约85列,所以通过向量的交叉太多了。。。还有其他方法吗?@iftachs栏目是如何安排的?你可以使用数字,例如-1:85,3:87。2可

我希望mutate在所有编辑过的单元格值上运行:在DF中有多个列,如果它不符合case_when的任何标准,则保留原始数据。 例如 当..==hi~1时变异~case_, 你好~2, T~保持原值

如果只为一列运行case\u,则可以在TRUE中引用列名本身~

如果要对多个列运行此操作,并且带有mutate_at/cross,则可以使用


非常感谢。我有多个列,大约85列,所以通过向量的交叉太多了。。。还有其他方法吗?@iftachs栏目是如何安排的?你可以使用数字,例如-1:85,3:87。2可以在列名中使用模式,例如-以“abc”开头,以“abc”结尾。3可以使用列的范围,例如A:Z。如果您创建一个小的可复制示例以及预期输出,将更容易提供帮助。了解。
library(dplyr)

df %>%
  mutate(cyl = case_when(col == 'hi' ~ 1, 
                         col == 'hello' ~ 2, 
                         TRUE ~ col))
df %>%
  mutate(across(c(a, b), ~case_when(.== "hi" ~ 1, 
                                    .== "hello"~2, 
                                    TRUE ~ .)))