r - 如何在 R 中将 tibble 的多个变量变异为相同的值
问题描述
我想改变列 2 到 4 t 的值NA
。我尝试使用mutate across
没有成功。
library(tidyverse)
df <- tibble(year = 2020, a = 1, b = 2, c = 3)
df %>% mutate(across(c(2:4), is.na))
#> # A tibble: 1 x 4
#> year a b c
#> <dbl> <lgl> <lgl> <lgl>
#> 1 2020 FALSE FALSE FALSE
# But this gives an error because NA is not a function
# df %>% mutate(across(c(2:4), NA))
Created on 2021-10-30 by the reprex package (v2.0.1)
解决方案
使用匿名函数或~
.
library(dplyr)
df %>% mutate(across(c(2:4), ~NA))
# year a b c
# <dbl> <lgl> <lgl> <lgl>
#1 2020 NA NA NA
在基础 R 中,您可以执行以下操作 -
df[2:4] <- NA
推荐阅读
- docker - 从 Ubuntu 主机访问在来宾 KVM 上运行的 docker 容器应用程序
- spring - 自动装配不与事件中心示例一起使用
- arrays - 将矩阵乘以字符串
- rest - 无法获取 Cloud Foundry api 的有效身份验证令牌
- c - yacc-Flex 中的移位/减少冲突
- c# - 如何在不设置环境变量的情况下将谷歌语音的凭据设置为文本?
- c# - 具有相同密钥的项目已存在
- ruby-on-rails - 如何在 Heroku 上重置我的 HOST 环境变量?
- c++ - Visual Studio 2010 C/C++ 中 Windows 10 的清单(第 2 部分)
- javascript - User displayName validation with Firebase