我有一个包含50个元素的正态分布随机生成向量
vector<-c(rnorm(50))
我希望将所有负值更改为0,将所有正值更改为1
我使用了这个函数和索引,但是我没有得到包含50个元素的向量
vector[ vector< 0 ] <- 1
vector[ vector> 0 ] <- 0
我该如何继续进行?
x = rnorm(50)
x = ifelse(x > 0, 1, 0)
或者
x[x < 0] = 0
x[x > 0] = 1
as.numeric (x>0)
然而,由于标准正态分布在0附近是对称的,为什么不直接通过模拟来实现呢?
sample(0:1, 50, replace=TRUE)
as.numeric(x > 0)
应该是最简单的。 - David Arenburgvector[ vector< 0 ] <- 1
vector[ vector> 0 ] <- 0
进入
vector[ vector> 0 ] <- 0
vector[ vector< 0 ] <- 1
sample(0:1,50,replace=T)
呢? - Eric Fail