[R-br] Salvar saídas de um loop

Cesar Rabak cesar.rabak em gmail.com
Sexta Fevereiro 9 22:31:36 -02 2018


Yuri,

Seu *loop* na variável de indução "city", tem a chamada à write.table no
escopo da variável "meses".

Faça a seguinte correção e veja se os resultados fazem sentido para você:

.
#for(e in 1:length(estrategias)){

  for(m in 1:length(meses)){

    a = read.table(paste0(raiz, 'E1\\', meses[m],'\\', 'final.txt'), header
= T, sep = '\t')
    for(city in 1:length(cidade)){

      for(i in 1:length(anos)){

        previsao[m,i] = a[city,i]
      }
*   # }*
*    write.table(previsao, paste0(raiz, 'E1\\', cidade[city],'.txt'),
row.names = F, col.names = T, sep = '\t')*
*}*
  }
#}

HTH
.
.


2017-08-09 16:42 GMT-03:00 Yury Duarte via R-br <r-br em listas.c3sl.ufpr.br>:

> Boa tarde colegas listeiros!
>
> Estou tendo um pequeno problema para salvar as saídas de um loop que fiz
> para preencher uma matriz com dados de diferentes arquivos. Meus arquivos
> base possuem informações anuais de produtividade de 15 locais para um
> determinado mês. Construí o loop com intenção de gerar um arquivo por
> local, contemplando as produtividades de cada mês (nas linhas) e de cada
> ano (nas colunas). Conferi o output do único arquivo salvo pelo script e os
> valores correspondem ao desejado, então acredito que a lógica para o
> preenchimento da matriz em branco esteja correta. Os arquivos para executar
> a simulação estão em anexo e o script está no corpo do email.
>
> Desde já, agradeço pela colaboração de todos!
>
> rm(list = ls())
>
> raiz = 'C:\\Users\\Yury\\Desktop\\Mestrado\\1_TESE\\Model_Data\\
> Maize\\PREVISAO\\PA\\'
>
> estrategia = c('E1', 'E2', 'E3', 'E4', 'E5')
> meses = c('setembro', 'outubro', 'novembro', 'dezembro', 'janeiro',
> 'fevereiro', 'marco', 'abril')
> cidade = c("abelardoluz", "altamira", "brasilia", "caarapo", "catalao",
> "lagarto", "machado", "mateiros",
>            "muitoscapoes", "piracicaba", "pontagrossa",
> "primaveradoleste", "srmangab", "sdesiderio", "urucui")
> anos = c(1980:2012)
> previsao = matrix(NA, nrow = length(meses), ncol = length(1980:2012))
> colnames(previsao) = 1980:2012
>
> #for(e in 1:length(estrategias)){
>
>   for(m in 1:length(meses)){
>
>     a = read.table(paste0(raiz, 'E1\\', meses[m],'\\', 'final.txt'),
> header = T, sep = '\t')
>     for(city in 1:length(cidade)){
>
>       for(i in 1:length(anos)){
>
>         previsao[m,i] = a[city,i]
>       }
>     }
>     write.table(previsao, paste0(raiz, 'E1\\', cidade[city],'.txt'),
> row.names = F, col.names = T, sep = '\t')
>   }
> #}
>
>
> Yury Duarte
> Engenheiro Agrônomo - ESALQ/USP
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20180209/1779ecaa/attachment.html>


Mais detalhes sobre a lista de discussão R-br