gpt4 book ai didi

根据向量的第一个字符在 R 中重新编码变量

转载 作者:行者123 更新时间:2023-12-02 20:20:55 24 4
gpt4 key购买 nike

我有一个如下所示的数据框:

codes <- c('TFAA1', 'TFAA2', 'TFAA3', 'TFAA4', 'TFAB1', 'TFAB2', 'TFAB3', 'TFAB4')
scores <- c(4,3,2,2,4,5,1,2)
example <- data.frame(codes, scores)

我想创建一个名为 code_group 的新列,其中以 TFAA 开头的所有内容都称为“Group1”,以 TFAB 开头的所有内容都称为“Group2”。

一直在使用 car 包中的 recode 函数和 grepl 函数,但我失败得很惨。到目前为止,这是我的尝试....

recode <- (codes, "%in% TFAA='Group1'; %in% TFAB='Group2'")

最佳答案

使用 dplyrstringr 你可以完成它:

library(dplyr)
library(stringr)
example %>%
mutate(code_group = case_when(str_detect(codes, "^TFAA") ~ "Group1",
str_detect(codes, "^TFAB") ~ "Group2"))

case_when 允许您使用多个 if-then 案例。 str_detect 让您可以检测您在字符串中寻找的模式。

关于根据向量的第一个字符在 R 中重新编码变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51424931/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com