r - str_c 在 tibble (R) 中除一列之外的所有列
问题描述
我是 tidyverse 的新手。我想加入除一个以外的所有列(因为其他列的名称可能会有所不同)。这是一个明显不起作用的虹膜示例。谢谢 :)
library(tidyverse)
dat <- as_tibble(iris)
dat %>% mutate(New = str_c(!Sepal.Length, sep="_"))
解决方案
我们可以使用select
来选择要粘贴和应用的str_c
列do.call
。
library(tidyverse)
dat %>% mutate(New = do.call(str_c, c(select(., !Sepal.Length), sep="_")))
但是,使用unite
会更简单。
dat %>% unite(New, !Sepal.Length, sep="_", remove= FALSE)
# Sepal.Length New Sepal.Width Petal.Length Petal.Width Species
# <dbl> <chr> <dbl> <dbl> <dbl> <fct>
# 1 5.1 3.5_1.4_0.2_setosa 3.5 1.4 0.2 setosa
# 2 4.9 3_1.4_0.2_setosa 3 1.4 0.2 setosa
# 3 4.7 3.2_1.3_0.2_setosa 3.2 1.3 0.2 setosa
# 4 4.6 3.1_1.5_0.2_setosa 3.1 1.5 0.2 setosa
# 5 5 3.6_1.4_0.2_setosa 3.6 1.4 0.2 setosa
# 6 5.4 3.9_1.7_0.4_setosa 3.9 1.7 0.4 setosa
# 7 4.6 3.4_1.4_0.3_setosa 3.4 1.4 0.3 setosa
# 8 5 3.4_1.5_0.2_setosa 3.4 1.5 0.2 setosa
# 9 4.4 2.9_1.4_0.2_setosa 2.9 1.4 0.2 setosa
#10 4.9 3.1_1.5_0.1_setosa 3.1 1.5 0.1 setosa
# … with 140 more rows
推荐阅读
- flutter - 如何在颤振测试中打开抽屉
- php - 如何使用服务器 IP 而不是用户 IP 将用户重定向到 API 端点(不同的域)?
- ruby-on-rails - Capybara::ElementNotFound: 找不到 css "#transaction_form"
- c# - 获取用户注册的来源/引荐来源网址
- oop - 在 OOP 中封装集合的顺序
- php - PHPMailer 链接问题
- geoserver - org.geotools.mbstyle.parse.MBFormatException:“层”需要 JSONArray
- c# - 使用列表邮件时,Outlook 邮件 API 返回拼写检查类名称作为 html 响应的一部分
- android - 如何从android中的json响应在listview中显示图像
- angular - OneSignal:在某些页面(路线)上隐藏铃铛按钮