我在使用 R 来填充矩阵时遇到问题,该矩阵的每一行具有不同的“比例因子”。此时每列都被相同地填充。
我已经尝试了很多方法,但下面我展示了我所做的。我认为我缺少一些基本的东西!
获取 26 个比例因子的列表:
Shape <- 2
x <- seq(0,25,1)
Scale <- NULL
for (i in 1:26){
Scale[i] <- x[i]/(gamma(1+1/Shape))
}
准备矩阵:
size <- length(x) ## size of matrix
w.dist <- matrix(
rep(x,size),
nrow= size,
ncol= size,
byrow= T)
在矩阵的每一行上应用 Weibull 函数(对于每个 x 值(风速))
for (i in 1:26){
w.dist[i,] <- apply(w.dist,2,function(x)dweibull(x,Shape,Scale[i]))
}
或者:
w.dist <- matrix(dweibull(x, shape=Shape, scale=Scale), nrow=26, ncol=26, byrow=TRUE)
我无法让任何一种方法起作用。任何帮助都会非常有帮助!