我有一个单词表,如下所示:

 wordlist <- data.frame(words = c("anywhere", "youll", "feel", "comfortable", "please", "dont"))

我有另一个带有辅音列表的框架:

 consonants <- data.frame(consonants = c("b", "c", "d", "f", "g", "h"))

我想在wordlist中创建一个名为word_structure的新变量,其中所有辅音都替换为"C",所有元音都替换为"V":

 wordlist$word_structure <- c("VCCCCVCV", "CVVCC", "CVVC", "CVCCVCCVCCV", "CCVVCV", "CVCC")

我想不出如何将条件格式与gsub相结合来获得我需要的内容.

推荐答案

与@stefan所示类似,在您的情况下,您可以写:

library(tidyverse)

dat <- tibble(
  words = c("anywhere", "youll", "feel", "comfortable", "please", "dont"),
  you_want = c("VCCCCVCV", "CVVCC", "CVVC", "CVCCVCCVCCV", "CCVVCV", "CVCC"),
  you_get = str_replace_all(str_replace_all(words, "[aeiou]", "V"), "[^V]", "C")
)

## A tibble: 6 × 3
#  words       you_want    you_get    
#  <chr>       <chr>       <chr>      
#1 anywhere    VCCCCVCV    VCCCCVCV   
#2 youll       CVVCC       CVVCC      
#3 feel        CVVC        CVVC       
#4 comfortable CVCCVCCVCCV CVCCVCCVCCV
#5 please      CCVVCV      CCVVCV     
#6 dont        CVCC        CVCC   

R相关问答推荐

如何根据包含相同值的某些列获取总额

如果行和列名以相同的开头,将矩阵值设置为0

如何在ggplot 2线性图的每个方面显示每个组的误差条?

使用R中的Shapetime裁剪格栅文件

编辑文件后编辑RhandsonTable

过滤器数据.基于两列的帧行和R中的外部向量

在使用ggroove后,将图例合并在gplot中

如何写一个R函数来旋转最后n分钟?

RStudio中相关数据的分组箱形图

bslib::card_header中的shine::downloadButton,图标而不是文本

在R中,如何将变量(A,B和C)拟合在同一列中,如A和B,以及A和C在同一面板中?

可以替代与NSE一起使用的‘any_of()’吗?

使用rvest从多个页面抓取时避免404错误

从服务器在Shiny中一起渲染图标和文本

R中治疗序列的相对时间指数

用多边形替换地块点

访问数据帧中未定义的列时出现R错误

整理ggmosaic图的标签

将边列表转换为路径长度列表

在R中添加要打印的垂直线