-4

データとそのラベル、見出し、情報(素人が理解できるようにデータについて)を単一の反復内のさまざまな段階でdouble-for-loopを介して生成する場合に、単一のExcelシートにエクスポートする方法。コード:

 k=3
 t=2
   o=seq(from=1, to=t, by=1)
    for(i in 1:t){
        v=((o[i])+1)
        print ("treatments")
        print (v)
        h=seq(from=0, to=o[i], by=1)
        q1=NULL
        q2=NULL
        x1=NULL
           for(j in 1:o[i]){
              q1=c((v-(4*h[j]+1)))
              q2=c(((4*h[j])+2))
              T=c(q1,q2)
              y=c(0)
              IB=c(y,cumsum(T)%%v)
              print("The Initial Block(s) is/are=")
              print(IB)
                   p=seq(from=0, to=v-1, by=1)
                   l=NULL
                     for(i in 1:k){
                     for(j in 1:v){
                     l=c(l,rep((IB[i]+p[j]+v)%% v))
                     }
                    }
              x= matrix(c(l),nrow=k,ncol=v,byrow = TRUE)
              x1=cbind(x1,x)
                }
         print ("Design Matrix is")
         print (x1)
       }

最初の反復では、出力は次のとおりです。

        [1] "treatments"
        [1] 3
        [1] "The Initial Block(s) is/are="
        [1] 0 2 1
        [1] "Design Matrix is"
        [,1] [,2] [,3]
 [1,]    0    1    2
 [2,]    2    0    1
 [3,]    1    2    0

2回目の反復では、出力は次のようになります。

  [1] "treatments"
  [1] 5
  [1] "The Initial Block(s) is/are="
  [1] 0 4 1
  [1] "The Initial Block(s) is/are="
  [1] 0 0 1
  [1] "Design Matrix is"
       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    0    1    2    3    4    0    1    2    3     4
 [2,]    4    0    1    2    3    0    1    2    3     4
 [3,]    1    2    3    4    0    1    2    3    4     0

等々 ...

考えてください

  1. 出力は、ファイルの単一のExcelシートに記載されている順序である場合があります。

  2. マトリックスはセルごとにある可能性があります-私は試しましたが、単一のセルに貼り付けました。

  3. あいまいな点がないかお尋ねください。

  4. コードは非常に長いので、自分の例を見てください。

4

1 に答える 1

2

記録のために、これは情報を表示するためのひどい、ひどい方法です。

library(XLConnect)
wb <- loadWorkbook("~/Desktop/so/terrible_idea.xlsx",create = TRUE)
sht <- "Horrible Way To Display Data"
createSheet(wb,name = sht)

k=3
 t=2
   o=seq(from=1, to=t, by=1)
    for(i in 1:t){
        v=((o[i])+1)
        print ("treatments")
        appendWorksheet(wb,data.frame("treatments"),sheet = sht,header = FALSE)
        row_counter <- row_counter + 1
        print (v)
        appendWorksheet(wb,as.data.frame(v),sheet = sht,header = FALSE)
        h=seq(from=0, to=o[i], by=1)
        q1=NULL
        q2=NULL
        x1=NULL
           for(j in 1:o[i]){
              q1=c((v-(4*h[j]+1)))
              q2=c(((4*h[j])+2))
              T=c(q1,q2)
              y=c(0)
              IB=c(y,cumsum(T)%%v)
              print("The Initial Block(s) is/are=")
              appendWorksheet(wb,data.frame("The Initial Block(s) is/are="),sheet = sht,header = FALSE)
              print(IB)
              appendWorksheet(wb,as.data.frame(IB),sheet = sht,header = FALSE)
              row_counter <- row_counter + nrow(as.data.frame(IB))
                   p=seq(from=0, to=v-1, by=1)
                   l=NULL
                     for(i in 1:k){
                     for(j in 1:v){
                     l=c(l,rep((IB[i]+p[j]+v)%% v))
                     }
                    }
              x= matrix(c(l),nrow=k,ncol=v,byrow = TRUE)
              x1=cbind(x1,x)
                }
         print ("Design Matrix is")
         appendWorksheet(wb,data.frame("Design Matrix is"),sheet = sht,header = FALSE)
         print (x1)
         appendWorksheet(wb,as.data.frame(x1),sheet = sht,header = FALSE)
       }

saveWorkbook(wb)
于 2013-02-05T23:16:53.960 に答える