gpt4 book ai didi

r - 使用as.data.frame函数为数据框分配名称

转载 作者:行者123 更新时间:2023-12-03 23:17:15 25 4
gpt4 key购买 nike

我正在尝试将矩阵转换为数据框,并在一行中分配名称。

当我使用?as.data.frame时,有一个名为col.names的参数似乎对我不起作用,我在做错什么吗?

as.data.frame(matrix(c(1:4), nrow=2), col.names=c("a","b"))


输出:

   V1 V2  
1 1 3
2 2 4


预期产量:

   a  b  
1 1 3
2 2 4


我知道我以后可以用`colnames(matrix)= c(“ a,” b)来分配它,但是我只是想知道是否可以在一行中完成。 (

最佳答案

我们可以在dimnames中使用matrix参数,当转换为data.frame时,它将返回列名称,例如

as.data.frame(matrix(1:4, nrow=2, dimnames = list(NULL, c("a", "b"))))
# a b
#1 1 3
#2 2 4


而在OP的代码中, matrix输出没有任何列名,因此 as.data.frame默认将列名创建为'V1','V2'。 col.names参数对于 as.data.frame class不是 matrix,因此它没有任何作用

如果我们引用 ?as.data.frame的文档


S3类“矩阵”的方法

as.data.frame(x,row.names = NULL,可选= FALSE,...,
stringsAsFactors = default.stringsAsFactors())

关于r - 使用as.data.frame函数为数据框分配名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43066762/

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