<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=iso-8859-1"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:"Segoe UI";
panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
{font-family:inherit;
panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link="#0563C1" vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal><span lang=PT-BR>Boa tarde a todos!<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal><span lang=PT-BR>Estou com dificuldade em gerar um loop e espero que alguém possa me ajudar aqui.<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal><span lang=PT-BR>Estou trabalhando com dados de sobrevivência de animais até 5 idades determinadas e o efeito individual de 19 características dentro de um servidor. A partir de um banco inicial, eu preciso rodar o mesmo script para combinar todas as idades com todas as características, gerando 95 bancos de dados diferentes.<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR>Até agora, eu consegui fazer 5 bancos relativos a cada idade através do commandArg:<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal>#Loop ----------------------------------------------------------------------------------<o:p></o:p></p><p class=MsoNormal>## Level 1: DATE OF BIRTH ==> z<o:p></o:p></p><p class=MsoNormal>sdrumthreshold = c("2019-01-01", "2018-01-01", "2017-01-01", "2016-01-01", "2015-01-01")<o:p></o:p></p><p class=MsoNormal>### Level 2: SURVIVAL AGE ==> t<o:p></o:p></p><p class=MsoNormal>sdactthreshold = c(36, 48, 60, 72, 84)<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>## Connection with the code in Linux.<o:p></o:p></p><p class=MsoNormal>args = commandArgs(trailingOnly = TRUE)<o:p></o:p></p><p class=MsoNormal>index.sdrum = as.numeric(args[1])<o:p></o:p></p><p class=MsoNormal>index.sdact = as.numeric(args[2])<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span lang=PT-BR>Quando eu chamo as variáveis dentro do loop no Linux, o script roda certinho. Segue como ilustração a forma como eu chamei o loop no Linux.<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal>#!/bin/bash<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>sdrumth_leader=(1 2 3 4 5)<o:p></o:p></p><p class=MsoNormal>sdactth_leader=(1 2 3 4 5)<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>for z in "${sdrumth_leader[@]}"<o:p></o:p></p><p class=MsoNormal>do<o:p></o:p></p><p class=MsoNormal> for t in "${sdactth_leader[@]}"<o:p></o:p></p><p class=MsoNormal> do<o:p></o:p></p><p class=MsoNormal> if [[ "$z" != "$t" ]]<o:p></o:p></p><p class=MsoNormal> then<o:p></o:p></p><p class=MsoNormal> continue<o:p></o:p></p><p class=MsoNormal> else<o:p></o:p></p><p class=MsoNormal> sbatch Survival.Rcode.bash $z $t #calling indexes.<o:p></o:p></p><p class=MsoNormal> sleep 1<o:p></o:p></p><p class=MsoNormal> fi<o:p></o:p></p><p class=MsoNormal> done<o:p></o:p></p><p class=MsoNormal>done<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span lang=PT-BR>Porém, tentei fazer a mesma coisa, criando um vetor com o nome das colunas e não tive sucesso:<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal>### Level 3: TYPE TRAITS ==> q<o:p></o:p></p><p class=MsoNormal>sdtypetrait = c("Stature", "Strength", "FinalScore", "DairyForm", "RumpAngle", "RumpWidth", "RearLegs", "ForeUdder", "RearUdderHeight", "RearUdderWidth", "FootAngle", "UdderDepth", "UdderCleft", "TeatPlacement", "TeatLength", "RearTeatPlacementRv", "RearTeatPlacementSv", “Pasterns", "RearTeatLength")<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>## Connection with the code in Linux.<o:p></o:p></p><p class=MsoNormal>args = commandArgs(trailingOnly = TRUE)<o:p></o:p></p><p class=MsoNormal>index.sdrum = as.numeric(args[1])<o:p></o:p></p><p class=MsoNormal>index.sdact = as.numeric(args[2])<o:p></o:p></p><p class=MsoNormal>index.typet = as.numeric(args[3])<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span lang=PT-BR>Quando eu chamo a variável dentro do script, ela vem com as aspas e dá erro. As entradas da variável do vetor são:<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal>type13 <- subset(type12, <b>sdtypetrait [index.typet]</b> <= 50)<o:p></o:p></p><p class=MsoNormal>count(type13<b>, sdtypetrait [index.typet]</b>)<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>model <- lm(formula = <b>sdtypetrait [index.typet]</b> ~ CalvingAge + I(CalvingAge^2) + appraisalDIM + I(appraisalDIM^2), data = type15)<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>dados_completo$<b>sdtypetrait [index.typet]</b>_adj <- dados_completo$residuals<o:p></o:p></p><p class=MsoNormal>dados_completo$<b>sdtypetrait [index.typet]</b>_adj2 <- (dados_completo$<b>sdtypetrait [index.typet]</b>_adj)*2<o:p></o:p></p><p class=MsoNormal>dados_usar <- select(dados_completo, RegId, SireRegId, DamRegId, CG, Cross, AFC, AFC2, Inbreeding, Inbreed2, <b>sdtypetrait [index.typet]</b>_adj, <b>sdtypetrait [index.typet]</b>_adj2, Survival)<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>write.table(dados_usar,<o:p></o:p></p><p class=MsoNormal> file = paste0("/teste/",<o:p></o:p></p><p class=MsoNormal> sdactthreshold[index.sdact],"/", <b>sdtypetrait [index.typet]</b>,"/Survival.dat"),<o:p></o:p></p><p class=MsoNormal> sep = " ",<o:p></o:p></p><p class=MsoNormal> row.names = F,<o:p></o:p></p><p class=MsoNormal> quote = F,<o:p></o:p></p><p class=MsoNormal> <span lang=PT-BR>col.names = F)<o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal><span lang=PT-BR>Será que alguém tem alguma ideia de como eu posso chamar a variável sem entrar as aspas, ou se a forma como estou rodando tem algum erro? <o:p></o:p></span></p><p class=MsoNormal><span lang=PT-BR><o:p> </o:p></span></p><p class=MsoNormal><span lang=PT-BR>Obrigada!<o:p></o:p></span></p><p class=MsoNormal style='background:white'><b><span lang=PT-BR style='font-size:10.0pt;font-family:"inherit",serif;color:black;border:none windowtext 1.0pt;padding:0cm'>____________________________________</span></b><span lang=PT-BR style='font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:black'><o:p></o:p></span></p><p class=MsoNormal style='background:white'><b><span lang=PT-BR style='font-size:10.0pt;font-family:"inherit",serif;color:black;border:none windowtext 1.0pt;padding:0cm'>Barbara Mazetti Nascimento</span></b><span lang=PT-BR style='font-size:10.5pt;font-family:"Segoe UI",sans-serif;color:black'><o:p></o:p></span></p><p class=MsoNormal style='background:white'><span lang=PT-BR style='font-size:10.0pt;font-family:"Arial",sans-serif;color:black;border:none windowtext 1.0pt;padding:0cm'>Postdoctoral Researcher</span><span lang=PT-BR style='color:black'><o:p></o:p></span></p><p class=MsoNormal style='background:white'><span style='font-size:10.0pt;font-family:"Arial",sans-serif;color:black;border:none windowtext 1.0pt;padding:0cm'>Department of Animal and Dairy Sciences</span><span style='font-size:12.0pt;font-family:"inherit",serif;color:black;border:none windowtext 1.0pt;padding:0cm'> </span><span style='color:black'><o:p></o:p></span></p><p class=MsoNormal style='background:white'><span style='font-size:10.0pt;font-family:"Arial",sans-serif;color:black;border:none windowtext 1.0pt;padding:0cm'>University of Wisconsin-Madison </span><span lang=PT-BR style='color:black'><o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>