You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言数据框(dataframe)中移除所有小于符号(<)?

解决移除DataFrame中小于符号("<")的问题

你之前的代码无效,核心原因是recode()函数是完全匹配并替换整个元素——你的数据里是<和数字绑定在一起的(比如<4),并非单独的<元素,所以recode("<" = "")找不到可匹配的内容,自然不会有任何变化。

下面提供两种可行的修改方案:

方案1:使用stringr::str_remove_all(tidyverse风格)

利用字符串替换函数,直接删除每个元素中的<符号:

library(tidyverse)

# 构造你的数据框
col1 <- c(1,5,"<4",3,2,9)
col2 <- c(1,7,"<3",1,0,"<9")
df <- data.frame(col1,col2)

# 移除所有<符号
df_cleaned <- df %>%
  mutate(across(everything(), ~str_remove_all(.x, "<")))

# 查看结果
df_cleaned

如果需要将处理后的列转为数值型,可追加as.numeric():

df_cleaned <- df %>%
  mutate(across(everything(), ~str_remove_all(.x, "<") %>% as.numeric()))

方案2:使用基础R的gsub(无需额外加载包)

用基础R的全局替换函数实现相同效果:

# 构造你的数据框
col1 <- c(1,5,"<4",3,2,9)
col2 <- c(1,7,"<3",1,0,"<9")
df <- data.frame(col1,col2)

# 移除所有<符号
df_cleaned <- df %>%
  mutate(across(everything(), ~gsub("<", "", .x)))

内容的提问来源于stack exchange,提问作者Basil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 18:32:04