微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从包含字母的列中粘贴MIN和MAX数值

如何解决如何从包含字母的列中粘贴MIN和MAX数值

我有一个df,其中的列包含特殊符号,单词和数字。我想重新编码C1变量,以便每当有一个'?'或一个词,我希望它保持不变,但是对于数字,我希望将BETWEEN和AND以及列的最小值和最大值一起粘贴。

我在下面尝试的方法的问题在于,max()和min()函数将字母和特殊符号读取为最小值和最大值,以便接收到“?”和“ w”而不是“ 1”和“ 5”

Snackbar

如何将最高和最低数值粘贴到列中而又不直接将它们写入语句中?列中的值很多,间隔也不同。

预期输出

df <- data.frame("C1" = c("1 - info","2","word","4","5 - info","?"),"C2" = c("P","P","F","P"),stringsAsFactors = F)


df$C1 <- ifelse(df$C1 =='?','?',ifelse(grepl('word',df$C1)==F & df$C1 !='?',paste('BETWEEN',min(substr(df$C1,1,1)),'AND',max(substr(df$C1,1))),df$C1))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。