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

如何对向量中数字的各位数字升序排列以实现去重?

对向量中数字字符串的各位数字排序以实现去重

直接用R的字符串处理函数就能实现需求,核心逻辑是拆分每个字符串的数字字符、排序、再拼接回去:

  1. 定义示例向量
vector = c("5213456","17235896","23731074")
  1. 编写排序处理逻辑
sorted_vector = sapply(vector, function(x) {
  # 拆分字符串为单个字符,排序后重新拼接
  paste(sort(strsplit(x, "")[[1]]), collapse = "")
}, USE.NAMES = FALSE)
  1. 查看结果
sorted_vector
# 输出:"1234556" "12356789" "01233477"

应用到数据框列的场景

如果你的数据框df中有一列num_col需要处理,直接将逻辑应用到该列即可:

df$sorted_num = sapply(df$num_col, function(x) {
  paste(sort(strsplit(x, "")[[1]]), collapse = "")
}, USE.NAMES = FALSE)

处理完成后,就可以通过sorted_num列实现去重,比如:

# 获取去重后的数据集
df_unique = df[!duplicated(df$sorted_num), ]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 14:23:13