Sto cercando di salvare i dati da un loop di test logici.Loop in R: come salvare le uscite?
Così ho i seguenti dati:
T1 <- matrix(seq(from=100000, to=6600000,length.out=676),26,26) # a matrix of 26X26 - here with illustrive values
minmax <- seq(from=1,to=49,by=1) # creates a sequence
Fstep <- 6569141.82/minmax # define a vector from 0 to 6569141.82 with 49 divisions
F <- rev(round(Fstep,0)) # round the vector values and re order them
F
ho runned il seguente ciclo
for (i in 1:49) {
print(T1 > F[i]) # I used print to see the results in the screen
}
Questo ciclo mi torna 49 matrici riempiti con i valori logici (vero o falso). Ogni matrice è il confronto di T1 contro ciascuna delle 49 posizioni F [i] (F [1], ...., F [49])
Ho bisogno di avere i valori in quelle matrici per ulteriore utilizzo come matrici di adiacenza per i grafici di rete. Tuttavia, quando non posso né assegnare quei valori logici a una matrice, né salvarli in valori CSV utilizzando "write.matrix".
Quindi, ho bisogno di avere 49 - matrici "W" compilate con valori logici (T o F). Ho già ottenuto quei valori dal ciclo sopra ma non riesco a ottenerlo come oggetto o come collezione di csv. File.
Ho provato
W<-matrix(0,26,26) #create an empty matrix to assign the logical arguments
for (i in 1:49){
W[i] <- T1>F[i] # I used print to see the results in the screen
}
che restituisce il seguente avviso
Warning messages:
1: In W[i] <- (T1 > F[i]) :
number of items to replace is not a multiple of replacement length
Ho anche provato una diversa impostazione in cui tutte le matrici paragono hanno le stesse dimensioni.
create.M <- function(F){ # a function to transform each position F[i] into a 26X26 matrix
for (i in 1:49) {
matrix(F[i],26,26)
}
}
Loop.T1 <- function(T1){ # a function to replicate T1(49 times)
for (i in 1:49) {
T1
}
}
e confrontato le due uscite
Loop.T1(T1)>create.M(F)
che restituisce
logical(0)
Se avete intenzione di usare per-loop avete bisogno di imparare che l'assegnazione è necessario all'interno del ciclo. Altrimenti non accade nulla di duraturo. –