将列与R中的case_when (across())内的后续列合并的一般方法是使用dplyr包中的mutate()函数和across()函数。通过这两个函数的组合,可以对指定的列进行条件判断,并在满足条件时进行列合并。
具体步骤如下:
下面是一个示例代码:
library(dplyr)
# 创建一个示例数据框
df <- data.frame(
A = c(1, 2, 3),
B = c(4, 5, 6),
C = c(7, 8, 9)
)
# 使用mutate()函数和across()函数进行列合并
df <- df %>%
mutate(D = across(A:C, ~ case_when(
. == 1 ~ paste(A, B, C, sep = "-"),
. == 2 ~ paste(A, B, sep = "-"),
. == 3 ~ paste(B, C, sep = "-"),
TRUE ~ ""
)))
# 输出结果
print(df)
在上述示例代码中,我们创建了一个示例数据框df,其中包含了三列(A、B、C)。然后使用mutate()函数和across()函数对A、B、C列进行条件判断,并根据条件使用paste()函数进行列合并,将合并结果存储在新的列D中。最后,通过print()函数输出结果。
这是一个简单的示例,实际应用中可以根据具体需求进行更复杂的条件判断和列合并操作。对于更多关于dplyr包的用法和函数介绍,可以参考腾讯云的相关产品和产品介绍链接地址。
领取专属 10元无门槛券
手把手带您无忧上云