如何将R语言DataFrame中的宝可梦名称转为大写?
解决DataFrame指定列转大写的问题
你遇到的问题是因为toupper()默认处理向量,直接传入整个DataFrame会把它强制转换为字符向量,破坏了原有的数据结构。正确的做法是只针对宝可梦名称所在的列进行操作:
方法一:基础R语法
直接定位到pokemon1列,用toupper()处理后重新赋值:
pokemon$pokemon1 <- toupper(pokemon$pokemon1)
执行后查看结果:
print(pokemon) # 输出: # pokemon1 evolution # 1 ABRA 1st # 2 KADABRA 2nd # 3 ALAKAZAM 3rd
方法二:使用tidyverse工具(可选)
如果你习惯用dplyr包,也可以这样写:
library(dplyr) pokemon <- pokemon %>% mutate(pokemon1 = toupper(pokemon1))
这样既保留了DataFrame的结构,又完成了指定列的大写转换。
内容的提问来源于stack exchange,提问作者VaiskiV
相关产品推荐
相关产品推荐

