将“<x”替换为 "x"

Replace "<x" by "x"

我有像“

例如:

“<0.1”将是“0.1”

我试过这个:

data2[1:nrow(data2),] <- as.data.frame(apply(data2[1:nrow(data2),], 2, function(x) sub("<a*", "", x)))

但它也会将“wrong (<0.1)”之类的字符串更改为“wrong (0.1)”。它只需将“

我搜索了以下示例: Replace $x<y$ by $x < y$

但不幸的是他们没有帮助。

您可以使用readrparse_number函数直接从文本中提取数字。

library(dplyr)
library(readr)

df <- data.frame(a = c('1', '>0.01', '<0.2'), b = c(1, 'wrong (<0.1)', '<0.05'))

df %>% mutate(across(.fns = parse_number))
#     a    b
#1 1.00 1.00
#2 0.01 0.10
#3 0.20 0.05