[英]R- how to fill matrix with for loop
我正在嘗試使用for循環創建一個矩陣,簡單但到目前為止還無法正常工作....我現在從R開始。
n = 17
M是一個包含kendall tau-b值的矩陣,ncol = 10 nrows = 1。
n <- length(plot[,2]);
z1a <- 1.96;
M1=matrix(data=NA, ncol= 10, nrow = 2);
for (i in M[,1:10]){
#print(i)
zr <- (1/2)*log((1+i)/(1-i));
SE <- sqrt(0.437/(n-4));
zU <- zr+z1a*SE;
zL <- zr-z1a*SE;
rL <- (exp(2*zL)-1)/(exp(2*zL)+1);
rU <- (exp(2*zU)-1)/(exp(2*zU)+1);
#print(rL)
#print(rU)
M1 [1,1:10] <- (exp(2*zL)-1)/(exp(2*zL)+1);
M1 [2,1:10] <- (exp(2*zU)-1)/(exp(2*zU)+1);
}
代碼的最后一行只是為了了解我要如何填充矩陣。 我該如何解決這個問題?
我不確定我是否理解這個問題。 這是你想要的? 我已將M初始化為0到1之間的隨機統一數字
z1a <- 1.96;
n <- 17
set.seed(1)
M = runif(10)
M1 = matrix(data = NA, ncol = 10, nrow = 2);
zr <- (1/2)*log((1+M)/(1-M));
SE <- sqrt(0.437/(n-4));
zU <- zr+z1a*SE;
zL <- zr-z1a*SE;
rL <- (exp(2*zL)-1)/(exp(2*zL)+1);
rU <- (exp(2*zU)-1)/(exp(2*zU)+1);
M1 [1,1:10] <- (exp(2*zL)-1)/(exp(2*zL)+1);
M1 [2,1:10] <- (exp(2*zU)-1)/(exp(2*zU)+1);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.