【发布时间】:2014-08-24 08:42:24
【问题描述】:
我有一个包含 2 列和多行的数据集。 第一列 ID,第二列是属于它的文本。
我想添加更多列来总结某个字符串在行的文本中出现的次数。字符串将是 "\n Positive\n", "\n Neutral\n", "\n Negativ\n"`
数据集示例:
Id, Content
2356, I like cheese.\n Positive\nI don't want to be here.\n Negative\n
3456, I am alone.\n Neutral\n
最后应该是这样的
Id, Content,Positiv, Neutral, Negativ
2356, I like cheese.\n Positive\nI don't want to be here.\n Negative\n,1 ,0 ,1
3456, I am alone.\n Neutral\n, 0, 1, 0
现在我像这样尝试过,但它没有给出正确的答案:
getCount1 <- function(data, keyword)
{
Positive <- str_count(Dataset$CONTENT, keyword)
return(data.frame(data,Positive))
}
Stufe1 <-getCount1(Dataset,'\n Positive\n')
################################################################
getCount2 <- function(data, keyword)
{
Neutral <- str_count(Stufe1$CONTENT, keyword)
return(data.frame(data,Neutral))
}
Stufe2 <-getCount2(Stufe1,'\n Neutral\n')
#####################################################
getCount3 <- function(data, keyword)
{
Negative <- str_count(Stufe2$CONTENT, keyword)
return(data.frame(data,Negative))
}
Stufe3 <-getCount3(Stufe2,'\n Negative\n')
【问题讨论】:
-
在这种情况下匹配应该为零,对吧?查找
gregexpr和regmatches作为起点。或者,有一些软件包可以使用,例如“stringr”或“stringi”。 -
欢迎来到 StackOverflow!请阅读有关how to ask a good question 的信息以及如何生成minimal reproducible example。这将使其他人更容易帮助您。
标签: r string count sum word-count