<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:10pt"><div><span>A   tem formatos diferentes, então terei que usar a gambiarra mesmo, rsrsrs.</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;"><span><br></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">Valeu, obrigada Rodrigo.</div><div></div><div> </div><div><span style="color: rgb(0, 0, 255); font-style: italic; font-weight: bold; font-family: 'times new roman', 'new york', times,
 serif;">Waldelene Moura</span><br style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;"><span style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">Analista de Sistemas</span><br style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;"><span style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">Universidade Federal do Maranhão - PROEN</span><br style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;"></div><div style="font-family: 'times new roman', 'new york', times, serif; font-style: italic;"><span style="color:rgb(0, 0, 255);"> </span></div> <div class="qtdSeparateBR"><br><br></div><div class="yahoo_quoted" style="display: block;"> <div style="font-family: HelveticaNeue-Light,
 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 10pt;"> <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt;"> <div dir="ltr"> <font size="2" face="Arial"> Em Quinta-feira, 5 de Junho de 2014 12:36, Rodrigo Coster <rcoster@gmail.com> escreveu:<br> </font> </div>  <br><br> <div class="y_msg_container"><div id="yiv4591197666"><div><div dir="ltr"><div><div>Da para fazer assim:</div><div><br clear="none"></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><div>calcula_matriz <- function (A = rbind(c( p + 8, 3), c( 5, p - 1)), limite) { </div>
</div><div><div><span class="yiv4591197666" style="white-space:pre;">       </span>for (p in 1:limite ) {</div></div><div><div><span class="yiv4591197666" style="white-space:pre;">                </span>print(A)</div></div><div><div><span class="yiv4591197666" style="white-space:pre;">      </span>} </div>
</div><div><div>}</div></div><div><div>calcula_matriz(limite = 1)</div></div></blockquote><div><div><br clear="none"></div><div>Mas se A tiver sempre o mesmo formato, não precisa ser parâmetro:</div><div><br clear="none"></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;">
<div><div>calcula_matriz <- function (limite) { </div></div><div><div><span class="yiv4591197666" style="white-space:pre;">       </span>for (p in 1:limite ) { </div></div><div><div><span class="yiv4591197666" style="white-space:pre;">          </span>print (rbind(c( p + 8, 3), c( 5, p - 1)))</div>
</div><div><div><span class="yiv4591197666" style="white-space:pre;">       </span>} </div></div><div><div>}</div></div><div><div><br clear="none"></div></div><div><div>calcula_matriz(limite = 1)</div></div></blockquote><div><br clear="none"></div><div>Ainda, se A tiver vários formatos diferentes, da para usar uma gambiarra:</div>
<div><br clear="none"></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px;"><div><div>calcula_matriz <- function (A = 'rbind(c( p + 8, 3), c( 5, p - 1))', limite) { </div></div><div><div><span class="yiv4591197666" style="white-space:pre;"> </span>for (p in 1:limite ) { </div>
</div><div><div><span class="yiv4591197666" style="white-space:pre;">               </span>print(eval(parse(text=A)))</div></div><div><div><span class="yiv4591197666" style="white-space:pre;">    </span>} </div></div><div><div>}</div></div><div><div>calcula_matriz(limite = 1)</div>
</div></blockquote><div><br clear="none"></div><div>Note que agora A é texto (ta entre aspas), e não mais uma expressão do R. Assim tu pode fazer:</div><div><br clear="none"></div><div>calcula_matriz(A = 'rbind(c(p, 1/p), c(p ^ 2, log(p)))', limite = 1)</div>
</div><div class="yiv4591197666gmail_extra"><br clear="none"><br clear="none"><div class="yiv4591197666gmail_quote">2014-06-05 12:26 GMT-03:00 Waldelene Moura <span dir="ltr"><<a rel="nofollow" shape="rect" ymailto="mailto:waldelene@yahoo.com.br" target="_blank" href="mailto:waldelene@yahoo.com.br">waldelene@yahoo.com.br</a>></span>:<br clear="none">
<div class="yiv4591197666yqt4192181097" id="yiv4591197666yqt77141"><blockquote class="yiv4591197666gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><div style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 10pt;">
<div><span>Oi Rodrigo  entendi um pouco o que voce disse, mas nao consegui juntar com a construção da minha matriz, ja que é ela  o parâmetro da função.</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span> Estou fazendo
  umas funções no meu mestrado na area de controle em que preciso passar matrizes com incertezas politópicas,  como parametros,, no caso as incertezas é a variável p, entro tambem com a variação dessas incertezas np exemplo abaixo chamei de limite,,,</span></div>
<div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>vou detalhar um pouco mais uma função bem modesta  para voce me ajudar e dizer onde  posso aproveitar sua
 sugestão.</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>-----    programa principal
  -----------------------------------------</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>limite = 3                              #  da o limite de p , no caso p vai variar de 1  a  4  (verifique que eu não defini a variável p)          </span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span style="background-color:transparent;">A =  rbind ( c( p + 8 ,     3),     </span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span style="background-color:transparent;">                  c( 5      , p - 1)  </span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span style="background-color:transparent;"><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
calcula_matriz(A, limite)         #  chamada da função</div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>------
   agora a funcão --------</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>calcula_matriz <-   function (A, limite) {</span><span style="background-color:transparent;"> </span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>   for ( p in 1 : limite ) {                 #  só aqui definir p</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>       print (A)</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>   }</span><span style="background-color:transparent;">  </span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>}</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>------------------------------------------------------------------</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>O resultado seria:</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>para p = 1           A = [9   3;  5  0]</span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><span style="font-size:10pt;">para p = 2           A = [10  3;  5  1]</span> </span></div><div style="color: rgb(0, 0, 0); font-size: 10pt; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><span style="font-size:10pt;">para p = 3           A = [11  3;  5  2]</span><span style="font-size:10pt;"> </span><span style="font-size:10pt;"> </span></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span><br clear="none"></span></div><div style="color: rgb(0, 0, 0); font-size: 13px; font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: transparent; font-style: normal;">
<span>agradeço  a  quem puder ajudar,</span></div><div class="yiv4591197666"><div></div><div> </div><div><span style="color: rgb(0, 0, 255); font-style: italic; font-weight: bold; font-family: 'times new roman', 'new york', times, serif;">Waldelene Moura</span><br clear="none" style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">
<span style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">Analista de Sistemas</span><br clear="none" style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">
<span style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">Universidade Federal do Maranhão - PROEN</span><br clear="none" style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">
</div><div style="font-family: 'times new roman', 'new york', times, serif; font-style: italic;"><span style="color:rgb(0,0,255);"> </span></div> <div><br clear="none"><br clear="none"></div></div><div style="display:block;"> <div style="font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 10pt;">
 <div style="font-family: HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial"> Em Quinta-feira, 5 de Junho de 2014 11:39, Rodrigo Coster <<a rel="nofollow" shape="rect" ymailto="mailto:rcoster@gmail.com" target="_blank" href="mailto:rcoster@gmail.com">rcoster@gmail.com</a>>
 escreveu:<br clear="none"> </font> </div><div><div class="yiv4591197666h5">  <br clear="none"><br clear="none"> <div><div><div><div dir="ltr">Waldelene,<div><br clear="none"></div><div>O que da pra fazer é definir o valor do parâmetro como padrão. Por exemplo:</div><div>
<br clear="none"></div><div><div>calcular_matrizes <- function(x = p + 2) {</div><div><span style="white-space:pre-wrap;">     </span>p <- rnorm(1)</div>
<div><span style="white-space:pre-wrap;"> </span>return(x)</div><div>}</div></div><div>calcular_matrizes()<br clear="none"></div><div><br clear="none"></div><div>Ele só vai executar o 'x = p + 2' quando a variável x for chamada, que ocorre somente depois de definir o valor de p.</div>

<div><br clear="none"></div></div><div><br clear="none"><br clear="none"><div>2014-06-05 11:27 GMT-03:00 Waldelene Moura <span dir="ltr"><<a rel="nofollow" shape="rect" ymailto="mailto:waldelene@yahoo.com.br" target="_blank" href="mailto:waldelene@yahoo.com.br">waldelene@yahoo.com.br</a>></span>:<br clear="none">

<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><div><div style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 10pt;">

<div><span></span></div><div style="display: table; width: auto; word-wrap: break-word; padding-top: 12px; padding-left: 0px; font-family: 'Helvetica Neue', 'Segoe UI', Helvetica, Arial, 'Lucida Grande', sans-serif;">

<div><div><div style="font-family: HelveticaNeue-Light, 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 10pt;"><div><br clear="none"></div><div style="background-color:transparent;">

<span>Olá pessoal, se alguem puder me ajudar nesse problema agradeço.</span></div><div style="background-color:transparent;"><span><br clear="none"></span></div><div style="background-color:transparent;">É o seguinte</div>
<div style="background-color:transparent;">
<br clear="none"></div><div style="background-color:transparent;">Preciso passar como parâmetro de uma função <span style="font-weight:bold;">uma matriz</span> que possui nos seus </div><div style="background-color:transparent;">

elementos uma variável <span style="font-weight:bold;">p</span>,  sendo que essa variável p só vai assumir valores dentro da função</div><div style="background-color:transparent;">chamada, <span style="font-size:10pt;">exemplo,</span></div>

<div style="background-color:transparent;"><br clear="none"></div><div style="background-color:transparent;"><br clear="none"></div><div style="background-color:transparent;">A = cbind(c(p+5, 6),</div><div style="background-color:transparent;">

               c(10, p+8))</div><div style="background-color:transparent;"><br clear="none"></div><div style="background-color:transparent;">calcular_matrizes (A)</div><div style="background-color:transparent;"><br clear="none">

</div><div style="background-color:transparent;"><br clear="none"></div><div style="background-color:transparent;">dentro da função <span style="font-weight:bold;">calcular_matrizes</span> tenho que achar valores para essa matriz para varios valores de <span style="font-weight:bold;">p</span></div>

<div style="background-color:transparent;"><br clear="none"></div><div style="background-color:transparent;">A pergunta é, como passar esse parâmetro, <span style="font-weight:bold;">no caso a matriz A</span> na função, sem dar erro de que a variável <span style="font-weight:bold;">p</span> não foi definida? (object 'p' not found).</div>

</div></div></div></div><span><font color="#888888"></font></span><div></div><div> </div><div><span style="color: rgb(0, 0, 255); font-style: italic; font-weight: bold; font-family: 'times new roman', 'new york', times, serif;">Waldelene Moura</span><br clear="none" style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">

<span style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">Analista de Sistemas</span><br clear="none" style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">

<span style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">Universidade Federal do Maranhão - PROEN</span><br clear="none" style="color: rgb(0, 0, 255); font-style: italic; font-family: 'times new roman', 'new york', times, serif;">

</div><div style="font-family: 'times new roman', 'new york', times, serif; font-style: italic;"><span style="color:rgb(0,0,255);"> </span></div></div></div></div><br clear="none">_______________________________________________<br clear="none">


R-br mailing list<br clear="none">
<a rel="nofollow" shape="rect" ymailto="mailto:R-br@listas.c3sl.ufpr.br" target="_blank" href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br clear="none">
<a rel="nofollow" shape="rect" target="_blank" href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br clear="none">
Leia o guia de postagem (<a rel="nofollow" shape="rect" target="_blank" href="http://www.leg.ufpr.br/r-br-guia">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br clear="none"></blockquote></div>
<br clear="none"></div></div></div><br clear="none"><br clear="none"></div>  </div></div></div> </div>  </div> </div></div></blockquote></div></div><br clear="none"></div></div></div><br><br></div>  </div> </div>  </div> </div></body></html>