我正在尝试对数据框中的所有元素进行一些转换。
当使用常规的apply函数时,我得到一个矩阵而不是一个数据框。有没有一种方法可以直接获取数据框而不添加as.data.frame
到每一行?
df = data.frame(a = LETTERS[1:5], b = LETTERS[6:10])
apply(df, 1, tolower) #Matrix
apply(df, 2, tolower) #Matrix
sapply(df, tolower) #Matrix
as.data.frame(sapply(df, tolower)) # Can I avoid "as.data.frame"?
我们可以使用lapply
并将其分配回'df'
df[] <- lapply(df, tolower)
在[]
保留了相同的结构原始数据集。不建议使用apply
将其转换为matrix
和。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句