问题标签 [stringr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2912 浏览

r - 如何通过分隔符拆分 r 中的字符串并丢弃最后两项?

我有一个分隔的字符串_,我想摆脱最后两个元素。例如,从A_B_C_D我想要返回A_B,从A_B_C_D_E我想要A_B_C。我尝试str_split_fixedstringr

但它返回"A" "B" "C_D"而不是 "A_B" "C" "D",否则我本可以head(x,-2)做得到A_B

有没有比这更好的方法

0 投票
2 回答
35987 浏览

r - 如何逃避R中的反斜杠?

我在 R 中工作并且在逃避反斜杠时遇到了麻烦。我正在使用图书馆stringr

我想要做str = str_replace_all(str, "\", "")

所以我尝试str = str_replace_all(str, "\\", "")了,但它不会工作。

我该怎么办?

0 投票
1 回答
6627 浏览

r - 一个我无法理解的错误。“承诺已经在评估中……”

我正在尝试在 package.json 的帮助下编写一个在名称中查找模式的函数stringr。我的功能如下所示:

当我调用该函数时,出现错误:

无法理解错误,以及我做错了什么..提前感谢您提供的任何指导方针:)

EDIT: 如果我改为这样写:

我得到:

这是不正确的,因为如果我执行该过程而不将其放入函数中,我会得到以下行:

这是一个输入:

Edit

这有效:

但是我怎么能在没有引号的情况下通过 Primus namezz(Primus,data,Name),?像我的问题一样思考一些事情,但as.character(quote())不起作用..

0 投票
1 回答
140 浏览

r - 使用 stringr 分割向量,意外的结果长度

一些简单的东西我在使用stringr来操纵字符向量时搞砸了。我有以下类型的数据框

我希望下划线之后的所有内容都作为单独的变量。这种使用str_sub导致长度为 20 的向量,我不知道为什么。

$<-.data.frame( *tmp*, "y", value = c("_12", "_7", "_15", 中的错误:替换有 20 行,数据有10

有人可以指导我如何以str_sub正确的方式编写电话吗?

0 投票
2 回答
926 浏览

r - data.table 中的 str_match 序列

我有一个字符串变量要解析成两部分。我想我会使用包中str_match的方法来解决这个问题stringr,它返回一个矩阵,第一列中包含原始字符串,而其他列中的每个提取部分。

我找到了大约十几个正则表达式来提取这两个部分。(这些部分是一个梯子,按工资计划排列,非常混乱。我已经通过使用一堆嵌套ifelse语句定义一个函数来验证我的正则表达式是否有效。)

我想按顺序检查正则表达式并使用第一个签出的部分提取部分。如果我只有一个正则表达式,我可以这样做:

(我花了很长时间才让它工作,尝试了函数的所有组合Vectorize以及调用中的 ing。)as.list*apply

我按顺序检查正则表达式的最佳尝试是这个相当丑陋的组合:

如您所见,它还没有完全起作用。

您对解决此问题的更好方法有任何想法吗?我的数据集中有大约 3.5 m 行,但这个字符串只有大约 2000 个唯一值,所以我并不担心效率。

0 投票
2 回答
13963 浏览

regex - 非贪心字符串正则表达式匹配

我很确定我在这里遗漏了一些明显的东西,但我不能让 R 使用非贪婪的正则表达式:

基函数的行为方式相同:

我希望比赛与http://stat.ethz.ch/R-manual/R-devel/library/base/html/regex.htmlab中的“贪婪”评论一样:

默认情况下,重复是贪婪的,因此使用最大可能的重复次数。可以通过附加将其更改为“最小”?到量词。(还有更多允许近似匹配的量词:请参阅 TRE 文档。)

有人可以解释一下发生了什么吗?

更新。疯狂的是,在某些其他情况下,非贪婪模式的行为符合预期:

0 投票
3 回答
1223 浏览

r - 当可能的输出已知时加速`strsplit`

我有一个带有因子列的大型数据框,我需要通过分隔符将因子名称拆分为三个因子列。这是我目前的方法,对于大型数据框(有时数百万行)非常慢:

有什么办法可以加快这个操作?我注意到每个类别“物种”、“大小等级”和“受感染”的数量都很少(<5),我提前知道这些是什么。

笔记:

  • stringr::str_split_fixed执行此任务,但不会更快
  • 数据框实际上最初是通过调用reshape::melt一个数组生成的,其中Class及其关联的级别是一个维度。如果有更快的方式从那里到达这里,那就太好了。
  • data.rdshttp://dl.getdropbox.com/u/3356641/data.rds
0 投票
1 回答
535 浏览

r - 将组合因子列拆分为 r data.table 中的两个因子列的最有效方法是什么?

我有一个包含两列的大型 data.table(9 M 行):fcombined 和值 fcombined 是一个因素,但它实际上是两个因素相互作用的结果。现在的问题是将一个因素列再次分成两列的最有效方法是什么?我已经想出了一个可行的解决方案,但也许我错过了更直接的方法。工作示例是:

0 投票
3 回答
4688 浏览

r - 删除字符串中第一个“反斜杠”后的所有内容

我有一个像下面这样的向量

我想在遇到第一个斜杠后立即删除所有内容,如下所示

谢谢你。

我的原始向量如下(只有头部)

这里的问题是我的原始 csv 文件不包含反斜杠,但是当我阅读它时出现反斜杠。原始csv文件如下

如您所见,它们实际上由“ENTER”分隔,但是当我使用 read.csv() 在 R 中读取它时,它们被反斜杠替换。

0 投票
3 回答
16593 浏览

r - 使用 str_detect 检测字符串中的模式

我正在尝试使用str_detect. 我的模式是一系列“....” - 点的确切数量未知。我正在尝试str_detect如下使用....

但是,在这种特殊情况下,str_detect返回 TRUE。想知道我在哪里做错了,是否str_detect完全可以使用正确的功能?希望这里有人可以提供帮助?

这将返回 TRUE。我期待 FALSE 因为点str不遵循模式。

在此先感谢,西马克