在R中,获取矩阵的前10个值并将行名称输出到向量

在R中,获取矩阵的前10个值并将行名称输出到向量,r,matrix,R,Matrix,如何从单列矩阵中提取前十个值,并将相应的行名称输出到向量 我想在我生成的饼图上贴上标签,但我一辈子都不知道该怎么做 非常感谢 Tim这里的情况稍微简单一些,因为您有一个单列矩阵,也可以将其视为向量 rownames(x)[order(x, decreasing=TRUE)][1:10] 这将按降序返回x的前10个索引,并提取x名称的相应元素。这里的情况稍微简单一些,因为您有一个单列矩阵,也可以将其视为向量 rownames(x)[order(x, decreasing=TRUE)][1:10]

如何从单列矩阵中提取前十个值,并将相应的行名称输出到向量

我想在我生成的饼图上贴上标签,但我一辈子都不知道该怎么做

非常感谢


Tim

这里的情况稍微简单一些,因为您有一个单列矩阵,也可以将其视为向量

rownames(x)[order(x, decreasing=TRUE)][1:10]

这将按降序返回x的前10个索引,并提取x名称的相应元素。

这里的情况稍微简单一些,因为您有一个单列矩阵,也可以将其视为向量

rownames(x)[order(x, decreasing=TRUE)][1:10]
这将按降序返回x的前10个索引,提取x名称的相应元素。

以下是一些数据

set.seed(123)
x =  matrix(runif(26), 26, dimnames=list(LETTERS, NULL))
生成一个命名向量以避免簿记错误,利用R将一维矩阵放入具有相应维度名称的向量这一事实

o = order(x, decreasing=TRUE)[1:10]
Result = x[o,]   # _named_ numeric
使用点图更好地表示数值,特别是便于比较震级

library(lattice)
dotplot(Result, type=c("l", "p"), cex=2, xlim=c(0, 1))
或者按字母顺序,不用担心记账

o = order(names(Result))
dotplot(Result[o], type=c("l", "p"), cex=2, xlim=c(0, 1))
这里有一些数据

set.seed(123)
x =  matrix(runif(26), 26, dimnames=list(LETTERS, NULL))
生成一个命名向量以避免簿记错误,利用R将一维矩阵放入具有相应维度名称的向量这一事实

o = order(x, decreasing=TRUE)[1:10]
Result = x[o,]   # _named_ numeric
使用点图更好地表示数值,特别是便于比较震级

library(lattice)
dotplot(Result, type=c("l", "p"), cex=2, xlim=c(0, 1))
或者按字母顺序,不用担心记账

o = order(names(Result))
dotplot(Result[o], type=c("l", "p"), cex=2, xlim=c(0, 1))

嗨,洪,谢谢你!它返回了一个空值,所以我将名称改为rownames,这样做很有效。再次感谢。嗨,洪,谢谢你!它返回了一个空值,所以我将名称改为rownames,这样做很有效。再次感谢。