模式匹配R

露西亚

约旦

id    Category
1     Noun
2     Negative
3     Positive
4     adj
5     word

每个术语分配给超过1个类别,因此,它对应于超过1个id。在terms.df中,所有ID都在一列中。

条款

Terms   id
 Love    1 4 5 3
 Hate    2 4 5
 ice     1 5

id的术语与ca.df中的类别相对应。我想要这样的输出:

df

Category      terms

Noun          ice Love
Negative      Hate
Positive      Love
adj           Hate Love
word          ice Hate Love

这个怎么做?

大卫·阿伦堡(David Arenburg)

这是一个可能的data.table/splitstackshape包解决方案

library(splitstackshape) ## loads `data.table` package too
terms.df <- cSplit(terms.df, "id", sep = " ", direction = "long")
setkey(terms.df, id)[ca.df, .(Category , Terms = toString(Terms)), by = .EACHI]

#    id Category           Terms
# 1:  1     Noun       Love, ice
# 2:  2 Negative            Hate
# 3:  3 Positive            Love
# 4:  4      adj      Love, Hate
# 5:  5     word Love, Hate, ice

一些解释

  1. 我们首先id根据列用空格分隔Terms
  2. 然后我们上的两个数据集之间执行二进制左连接id
  3. 在连接时,我们Terms使用by = .EACHI运算符根据每个连接将列返回串联,这使我们可以在joinig时执行不同的操作

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R 中的模式匹配

来自分类Dev

与R中的公式匹配的模式

来自分类Dev

R功能,用于模式匹配

来自分类Dev

R中的计数模式匹配

来自分类Dev

模式与R中的文件名匹配

来自分类Dev

R中的模式匹配和替换

来自分类Dev

模式匹配以在R中创建新列

来自分类Dev

使用 R 进行数据模式匹配

来自分类Dev

向量化模式匹配返回R中的模式

来自分类Dev

R:对与特定模式匹配的所有变量进行回归

来自分类Dev

在R中,如何使用模糊匹配来搜索多个模式?

来自分类Dev

R中函数调用的参数值的haskell样式模式匹配

来自分类Dev

如何在R中的列匹配模式中转换值

来自分类Dev

替换与R中的特定模式匹配的列中的值

来自分类Dev

R中的多个字符串/模式匹配

来自分类Dev

R正则表达式匹配鸣叫模式

来自分类Dev

R grepl-字符串匹配模式

来自分类Dev

R匹配和替换数据框中的模式

来自分类Dev

R-使用grepl进行条件模式匹配

来自分类Dev

使用R中的grepl()函数进行模式匹配

来自分类Dev

在R中的多个列中删除与符号/模式匹配的行

来自分类Dev

匹配R中字符串中的多个模式

来自分类Dev

在R中将模式匹配参数化为函数参数

来自分类Dev

R regex匹配模式并替换为动态值

来自分类Dev

使用grepl()匹配数据R上的多个模式

来自分类Dev

R- 乘以匹配命名模式的列

来自分类Dev

使用 R 正则表达式的模式匹配问题

来自分类Dev

如何在R中使用模式匹配的结果

来自分类Dev

错误:多个包与指定模式匹配:D:\ a \ r1 \ a \ ** \ *。zip。请限制搜索模式