row.name使用`structure`函数作为c(NA,* integer *)

问题描述 投票:2回答:1

当我运行这个时,有谁知道为什么:

row.names(structure(list(speed = c(4, 7), dist = c(2, 22)), 
                    row.names = c(NA, 2L), class = "data.frame"))

我明白了:

# "1" "2"

而不是c(NA, 2L)?我的意思是row.names中的structure论证究竟对论证有什么影响?

当我尝试使用dput来查看某些数据帧的结构时,我偶然发现了这一点。例如

dput(cars)

我注意到它中的row.names论证,即:c(NA, -50L)

r dataframe
1个回答
1
投票

c(NA, n)是数据帧在内部以1:n的常见情况存储行名的方式,以节省空间和处理时间。对于将其视为“1”,“2”的用户而言,这不应该是可访问的......因此访问者功能将其翻译。

© www.soinside.com 2019 - 2024. All rights reserved.