r - 将数字替换为r中数据框中的字母
问题描述
所以基本上我在数据框中有一列,例如:
df <- data.frame(well = c("0","1",NA,"1","1","2","2","3","4","3"))
我只想通过将“0”替换为“A”、“1”替换为“B”、...、“7”替换为“H”来创建一个新列。我试过这个没有成功:
lxn <- data.frame(old_name = c(0,1,2,3,4,5,6,7),
new_name = c("A","B","C","D","E","F","G","H"))
map <- lxn$new_name
names(map) <- lxn$old_name
df <- df %>% mutate(well_l = ifelse(well %in% names(map),
map[well],
well))
如果您尝试一下,您可以看到输出基本上是井号 + 1。我不知道为什么我没有检索字母 (new_name) 并获取井号 + 1。
希望可以有人帮帮我。
解决方案
您可以使用内置的常量LETTERS
。
df <- transform(df, let=LETTERS[well])
df
# well let
# 1 0 A
# 2 1 B
# 3 <NA> <NA>
# 4 1 B
# 5 1 B
# 6 2 C
# 7 2 C
# 8 3 D
# 9 4 E
# 10 3 D
推荐阅读
- openssl - 使用openssl s_client通过HTTPS隧道手动获取数据
- mongodb - MongoDB - 如何判断每个文档在聚合匹配后是否有一个完全匹配的元素数组
- phpstorm - PhpStorm - 标签名称中的空格问题(2020.3 版)
- java - 你如何转换地图
与杰克逊一起进入 {"keyprop" : key, "valueprop" : value} 的数组? - clojure - 如何正确检查 Java Interop 中的布尔值?
- sql - SQL 函数创建
- git - git double change,大小写相同的文件名
- javascript - Django:jQuery触发表单提交onchange of checkbox并保留重新加载时的值
- c# - 当桌面区域更改时,Appbar 会移动
- php - 使用 mysqli_connect() 创建到 mysql 的远程连接