r - 循环以在 r 中使用相应的值来标记标记

标签 r string

这应该很简单;但是,我做对了。 我得到了以下列表:

list <- list(c("sofa", "couch"), 
         c("fridge"),
         c("desk", "table", "brown"),
         c("window", "clean"),
         c("speaker"))

我正在尝试将其转换为以下格式(作为数据框)

table <- data.frame(word = c("sofa", "couch", "fridge", "desk", "table", "brown", "window", "clean", "speaker"),
                label = c("sofa couch", "sofa couch", 
                          "fridge", 
                          "desk table brown", "desk table brown", "desk table brown",
                          "window clean",
                          "window clean",
                          "speaker"))

我创建了这个对我有意义的循环,但它不起作用。我不知道为什么或者这是否是最好的方法

table <- data.frame(word = character(), label = character(), stringsAsFactors = FALSE)
value <- 0

for(i in 1:length(list)){
  for(j in 1:length(list[[i]])){
    value <- c(list[[i]][j], str_c(list[[i]], collapse = " "))
    table <- rbind(table, value)
  }
}

最佳答案

另一个选项是stack

stack(setNames(list, sapply(list, paste, collapse = " ")))
#   values              ind
#1    sofa       sofa couch
#2   couch       sofa couch
#3  fridge           fridge
#4    desk desk table brown
#5   table desk table brown
#6   brown desk table brown
#7  window     window clean
#8   clean     window clean
#9 speaker          speaker

关于r - 循环以在 r 中使用相应的值来标记标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60951713/

相关文章:

r twitter userTimeline 错误 oauth

r - R shiny 中的 Cron 作业 - shinyapps io 中的 Shiny 任务计划

c++ - 使用 getline() 输入字符串的问题

Python Pandas 在 to_datetime 上调试

java - java中如何替换字符串值

python拆分字符串但保留分隔符

r - ggplot2:带正态曲线的直方图

r - 从向量中过滤包含字符串的行

r - 你如何在 R 中做条件 "left join"?

javascript - 如何使用javascript从字符串末尾删除多个逗号?