try 从列中删除★符号但无济于事.

dput(star$fifa21_raw_data.W.F[1:20])

C("4★","4★","3★","5★","5★","4★","4★", "3★","3★","4★","3★","4★","3★","3★", "4★","4★","3★","4★","3★","4★"

我到处看了看,觉得GSub在这里可以做到这一点,所以我试了一下:

gsub('[★]([0-9]+)','\\1\\2', star$fifa21_raw_data.W.F)

和R打印了相同的结果:

[1]"4★""4★""3★""5★""5★""4★""4★""3★""3★""4★" [11]"3★""4★""3★""3★""4★""4★""3★""4★""3★""4★"

我不知所措.谢谢你在这件事上帮助我.

推荐答案

除了您的模式[★]([0-9]+)与示例数据不匹配之外,请注意,数字只有一个捕获组,所以没有\\2.

如果想要匹配示例数据中的格式,可以从捕获单个数字开始,然后匹配它后面的空格:

([0-9])\\s+★

哪一项将匹配:

  • ([0-9])捕获第一组中的一位数
  • \\s+匹配1个或多个空格字符(如果需要,也可以只匹配空格)
  • 匹配字面意思

在替换中使用组1.

items <- c("4 ★", "4 ★", "3 ★", "5 ★", "5 ★", "4 ★", "4 ★", "3 ★", "3 ★", "4 ★", "3 ★", "4 ★", "3 ★", "3 ★", "4 ★", "4 ★", "3 ★", "4 ★", "3 ★", "4 ★")
result <- gsub("([0-9])\\s+★", "\\1", items)

print(result)

输出

[1] "4" "4" "3" "5" "5" "4" "4" "3" "3" "4" "3" "4" "3" "3" "4" "4" "3" "4" "3" "4"

R相关问答推荐

通过绘图 Select 线串几何体并为其着色

从多个前置日期中获取最长日期

如何删除R中除某些特定名称外的所有字符串?

bslib::card_header中的shine::downloadButton,图标而不是文本

如何在R中对深度嵌套的tibbles中的非空连续行求和?

在组中添加值增加和减少的行

我如何才能找到FAMILY=POISSON(LINK=&Q;LOG&Q;)中的模型预测指定值的日期?

如何用书面利率绘制geom_bar图

如何根据数据帧中的值从该数据帧中提取值?

KM估计的差异:SvyKm与带权重的调查

R如何将列名转换为更好的年和月格式

自动STAT_SUMMARY统计与手动标准误差之间的差异

如何判断代码是否在R Markdown(RMD)上下文中交互运行?

构建一个6/49彩票模拟系统

为什么不能使用lApply在包装函数中调用子集

在ggplot2图表中通过端点连接点

R没有按顺序显示我的有序系数?

组合名称具有模式的列表的元素

使用显式二元谓词子集化sfc对象时出错

将字符变量出现次数不相等的字符框整形为pivot_wider,而不删除重复名称或嵌套字符变量