我正在寻求帮助在 R 中实现一个函数来截断level_stream
我在 R 中的数据帧的字符串向量,但还没有太多运气。本质上,当列中的一行pre_quiz_score
不是NA
时,我想截断字符串的开始部分直到(包括)第一个字符,如果 a不是该行|
,我想截断最后一个字符之后的所有内容。|
post_quiz_score
NA
df <- data.frame(ls = c('123 L0=38/42|425 L0=40/42', NA, '482 L7=7/12|789 L8=5/6|523 L9=2/6'),
pre_quiz_score = c(88, NA, 12),
post_quiz_score = c(NA, NA, 90))
我想以“tidyverse”的方式实现它并矢量化以获得类似的东西
----------------------------------------------------------------------------
| ls | pre_quiz_score | post_quiz_score |
| 425 L0=40/42 | 88 | NA |
| NA | NA | NA |
| 789 L8=5/6 | 12 | 90 |
到目前为止,我还没有得到stringr::str_split
, gsub
, orsub
正常工作,主要是因为我最终只删除了|
's 或所有字符串,但最后一个|
和之后。
我希望这是有道理的,谢谢!