如何使用R中的字符串向量对data.table进行子集化

JHall651

我有一个很大的data.table,每一行都有一行文本。我试图通过查找包含多个单词之一的行来对data.table进行子集化。这是我尝试过的。

textDt <- data.table(LinesOfText = c("There was a small frog.","Most of the 
time I ate chicken","There are so many places to stay here.","People on 
stackoverflow are tremendously helpful.","Why do grapefuits cause weird drug 
interactions?","If I were tiny I could fit in there"))

targetWords <- c("small","tiny","no room","cramped","mini")

targetDt <- textDt[targetWords %in% LinesOfText]

这总是会导致错误。我知道必须有一个简单的解决方案使我望而却步。

扬尼斯·瓦西利亚迪斯(Yannis Vassiliadis)

我喜欢使用,stringr因为我相信它会更快。因此,这是基于此的解决方案:

library(stringr)
targetWords<- paste(targetWords, collapse = "|")
# "small|tiny|no room|cramped|mini"

targetDT<- textDt[str_detect(LinesOfText , targetWords)]
targetDT
#                           LinesOfText 
#1: If I were tiny I could fit in there
#2:             There was a small frog.

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用索引对data.table中的行进行子集化

在data.table中使用grep进行子集化-unpredicatble

如何使用部分匹配的字符串进行子集化?

如何在R中的单列中按字符串标签对行值进行子集化?

在 data.table 中,如何在 j 中使用 ifelse() 进行子集化并使用 .N 作为子集后的观察数?

R:如何对数据框列中的字符串进行子集化?

通过子字符串向量对data.table进行子集

在一行中按字数对字符串向量进行子集化

在矩阵中对字符串进行子集化后如何获得字符串矩阵?

r:基于多个条件对字符串进行子集化

如何在R中对向量的元素进行子字符串化

如何在R中的table1函数中对行进行子集化?

在 R 中使用 data.table 和 is.na(x) 在函数内进行子集化

如何基于函数中传递的参数对data.table对象进行子集化?

如何使用data.table按组对变量的随机值进行子集化?

R data.table 根据字符向量中的部分字符串匹配选择行

使用二进制搜索按范围对data.table进行子集化

如何基于熊猫数据框中的字符串选择行并对其进行子集化?

使用 if 语句对字符串变量中的值进行子集化

使用%chin%来对自动索引的data.table的字符列进行子集化会提高速度吗?

R data.table:如何使用字符串中的名称创建新列?

使用作为字符串传递的条件对数据框进行子集化(动态子集化数据集)

如何按行对子集进行子集化?

如何对 linnet 对象进行子集化

如何对大型 SpatialPolygonsDataFrame 进行子集化

使用 Pandas 对行进行子集化

如何对字符向量中的所有整数和/或数值进行子集化?

如何在R中子集化字符串

如何在R中的列表中对矩阵进行子集化?