R保留矢量的顺序,将其应用于另一个矢量

时间:2014-02-28 13:13:14

标签: r vector convex-hull

这与前一个问题有关:

Basic R, how to populate a vector with results from a function

但是我想我会发布一个新的,因为我有一个额外的要求。拿这个R代码。

X <- matrix(stats::rnorm(100), ncol = 2)
hpts <- chull(X)
Y <- ifelse(X[,1] %in% X[hpts], 1, 0)
c(X,Y)
Z <- matrix(0,ncol = 1,nrow =50)

我想添加一个额外的向量Z,保留hpts的顺序。所以如果t(t(hpts))看起来像这样:

[1,]   48
[2,]   27
[3,]   15
[4,]   13
[5,]   39
[6,]    2
[7,]    5
[8,]   50

然后我希望第48行Z有1,第27行有2,第15行有3等等。我试图用for循环:: for(我在Y){...}做这个,但我没有成功。任何指针都会受到赞赏。

1 个答案:

答案 0 :(得分:2)

这应该这样做:

Z[c(hpts),1] <- seq_along(hpts)