gpt4 book ai didi

r - 为什么 r 中的 nrow(dataframe) 和 length(dataframe) 给出不同的结果?

转载 作者:行者123 更新时间:2023-12-03 18:35:55 26 4
gpt4 key购买 nike

我有一个有序的数据框,想知道最后一行的编号。

data_ranking <- reduced_data[order(reduced_data$outcome,reduced_data$hospital,na.last=NA),]
nobs <- nrow(data_ranking)

给了我不同的结果
data_ranking <- reduced_data[order(reduced_data$outcome,reduced_data$hospital,na.last=NA),]
nobs <- length(data_ranking)

我想了解这是为什么。看来 nrow给了我我正在寻找的答案,但我不明白为什么。

最佳答案

数据框本质上是列表,其中每个元素的长度都相同。

列表的每个元素都是一列,因此 length给你列表的长度,通常是列数。
nrow会给你行数,ncol (或 length )列数。

一旦我们在 data.frame 中有非标准结构(例如矩阵)和

 x <- data.frame(y=1:5, z = matrix(1:10,ncol=2))
ncol(x)
# 3
length(x)
# 3


x1 <- data.frame(y=1:5, z = I(matrix(1:10,ncol=2)))

ncol(x1)
# 2
length(x)
# 2

关于r - 为什么 r 中的 nrow(dataframe) 和 length(dataframe) 给出不同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35305988/

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