gpt4 book ai didi

r - (因子)数据帧列的小写

转载 作者:行者123 更新时间:2023-12-04 04:58:53 32 4
gpt4 key购买 nike

我有这种格式的data.frame:

'data.frame':   244 obs. of  1 variable:
$ names: Factor w/ 244 levels "ERA","BAKE",..: 1 2 3 4 5 6 7 8 9 10 ...

我用它来将其转换为小写:
df$names <- tolower(df$names)

结果我得到这个:
> str(df)
'data.frame': 244 obs. of 1 variable:
$ names: chr "era" "bake" "and" "stock price" ...

在转换为小写字母的同时,如何保持初始 data.frame的结构?

最佳答案

查看tolower的来源(您可以通过在控制台中输入变量名tolower或输入print(tolower)来实现此目的):

if (!is.character(x)) 
x <- as.character(x)

您的 factor列被强制为 character向量。

相反,我相信您想要:
levels(df$names) <- tolower(levels(df$names))

这也更加有效,因为我们只需要替换内存中 length(levels(df$names))的值,通常比替换 nrow(df)值的完整向量要小得多。

关于r - (因子)数据帧列的小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35974571/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com