[R-br] [R] Uso da função if

Fernando Antonio de souza nandodesouza em gmail.com
Quarta Março 4 14:06:15 BRT 2015


A questão não é ficar mais claro para você. É que teremos que digitar esses
valores em planilha, para analisar, o que nos tomará tempo. O dput é a
melhor opção. Faça um dput de somente uma parte do seu dado (com alguns
horários)

Ou então se você tem um serviço de hospedagem em nuvem (como dropbox) vc
pode hospedar seu arquivo lá e compartilhar o link.

Do jeito que enviou é  pouco provável que alguém vá digitar os dados.

Em 4 de março de 2015 14:00, Michelle Bau Graczyk <mbgraczyk em gmail.com>
escreveu:

> Oi Fernando e Rafael
> , eu acho que, pelo que eu vi, se eu só mandat o dput nao vai ficar tão
> claro. Por isso vou mandar os dados aqui em baixo, espero que você não ache
> ruim. Porque assim acho que fica mais claro.
> Eu preciso separar por horário os valores de volume. Assim eu quero gerar
> uma matriz as quais as colunas vao de 09:31 até 16:03 com as linhas sendo
> preenchidas pelos volumes do certo dia. O horário eu deixei em numero que
> vai de 1 ate a 396 ao invés de 09:31 até 16:03 porque achei mais fácil,
> ainda tenho dificuldades com character.
>
> Bom, seguem os dados!
>
> Muito obrigada!
>
> 01.07.2004 09:31:00 51.37 27900
> 01.07.2004 09:32:00 51.32 100
> 01.07.2004 09:33:00 51.45 700
> 01.07.2004 09:34:00 51.46 1000
> 01.07.2004 09:35:00 51.50 800
> 01.07.2004 09:36:00 51.54 3000
> 01.07.2004 09:37:00 51.54 1600
> .
> .
> .
> 31.12.2004 15:45:00 56.50 4100
> 31.12.2004 15:46:00 56.50 7400
> 31.12.2004 15:47:00 56.40 8400
> 31.12.2004 15:48:00 56.44 15800
> 31.12.2004 15:49:00 56.41 4700
> 31.12.2004 15:50:00 56.44 6900
> 31.12.2004 15:51:00 56.42 9800
> 31.12.2004 15:52:00 56.43 8700
> 31.12.2004 15:53:00 56.43 7400
> 31.12.2004 15:54:00 56.40 12400
> 31.12.2004 15:55:00 56.44 11600
> 31.12.2004 15:56:00 56.45 8900
> 31.12.2004 15:57:00 56.44 14300
> 31.12.2004 15:58:00 56.44 16600
> 31.12.2004 15:59:00 56.43 21100
> 31.12.2004 16:00:00 56.43 34500
> 31.12.2004 16:02:00 56.37 46000
> 31.12.2004 16:03:00 56.37 111400
>
> Em 4 de março de 2015 13:52, Michelle Bau Graczyk <mbgraczyk em gmail.com>
> escreveu:
>
>> Oi Fernando e Rafael
>> , eu acho que, pelo que eu vi, se eu só mandat o dput nao vai ficar tão
>> claro. Por isso vou mandar os dados em anexo, espero que você não ache
>> ruim. Porque assim acho que fica mais claro.
>> Eu preciso separar por horário os valores de volume. Assim eu quero gerar
>> uma matriz as quais as colunas vao de 09:31 até 16:03 com as linhas sendo
>> preenchidas pelos volumes do certo dia. O horário eu deixei em numero que
>> vai de 1 ate a 396 ao invés de 09:31 até 16:03 porque achei mais fácil,
>> ainda tenho dificuldades com character.
>>
>> Bom, seguem os dados em anexo.
>>
>> Muito obrigada!
>>
>> Em 4 de março de 2015 13:34, Fernando Antonio de souza <
>> nandodesouza em gmail.com> escreveu:
>>
>> Michelle é que para que os usuários da lista possam lhe ajudar é
>>> necessário que você forneça um CMR(código mínimo reproduzível) isso permite
>>> que possamos acessar seus dados e refazer os seus comandos e assim lhe
>>> orientar melhor.
>>>
>>> Você forneceu o código, no entanto eu não tenho como acessar seus dados,
>>> pois o endereço que vc forneceu no read.table não é o mesmo em meu
>>> computador.
>>>
>>> Por isso estou lhe solicitando que faça um dput(seusbancodedados). Após
>>> dar o enter esta função retornara seu banco de dados em um formato que
>>> todos os usuários poderam ter acesso apenas por copiar e colar esta saída
>>> no R. Você copia e cole no email essa saída e assim todos poderão utilizar
>>> seus dados e lhe ajudar de maneira mais rápida
>>>
>>> Você pode fornecer todo o banco de dados ou apenas parte dele (no caso
>>> de banco de dados muito grande). O importante é que os dados fornecidos
>>> possam ser reproduzidos pela pessoa que está lhe ajudando.
>>>
>>> Em 4 de março de 2015 13:25, Michelle Bau Graczyk <mbgraczyk em gmail.com>
>>> escreveu:
>>>
>>> Oi Fernando,
>>>>
>>>> Me desculpe mas você pode ser um pouco mais claro? Sou iniciante em R e
>>>> por isso ainda tenho muita dificuldade.
>>>>
>>>> Em 4 de março de 2015 13:20, Fernando Antonio de souza <
>>>> nandodesouza em gmail.com> escreveu:
>>>>
>>>> OLÁ
>>>>>
>>>>> Faça um dput(seubancodedados) copie e cole a saída para que seus
>>>>> comandos possa ser replicados e possa lhe ajudar. Acredito que o que você
>>>>> deseja fazer pode ser feito com funções do pacote plyr ou lapply, o que
>>>>> torna muito mais eficiente.
>>>>>
>>>>> Em 4 de março de 2015 13:09, Michelle Bau Graczyk <mbgraczyk em gmail.com
>>>>> > escreveu:
>>>>>
>>>>>> Boa tarde,
>>>>>>
>>>>>> Estou com um problema de lógica para o uso do if. Meu intuito com
>>>>>> este programa é separar por horário os valores do volume. O horário está
>>>>>> escrito de maneira numérica e vai de 1 até 396. O valor máximo de volumes
>>>>>> por horário é 126.
>>>>>> Só que quando tento fazer rodar, vem a mensagem :
>>>>>> Erro em if (AA.data$hora[k] == i) { :
>>>>>>   valor ausente onde TRUE/FALSE necessário
>>>>>>
>>>>>> Abaixo segue o programa.
>>>>>>
>>>>>> AA<-read.table("/Users/bau/Documents/Mestrado/teste/AXP_NYS_USD_1min_EST5EDT_200407s12e.dat",
>>>>>> header=FALSE, col.names=c("data","hora","preco","volume"))
>>>>>> hora<-as.numeric(AA$hora)
>>>>>> AA.data<-data.frame(data=AA$data,hora=hora, preco=AA$preco,
>>>>>> volume=AA$volume)
>>>>>> write.table(AA.data,"testeteste.txt")
>>>>>>
>>>>>> matriz.dadosAA<-matrix(nrow=128,ncol=4)
>>>>>> for(i in 1:4){
>>>>>>
>>>>>>   j<-1
>>>>>>   for(k in 1:48935){
>>>>>>     for(j in 1:126){
>>>>>>     if(AA.data$hora[k]==i){
>>>>>>
>>>>>>
>>>>>>       matriz.dadosAA[j,i]=AA.data$volume[k]
>>>>>>       j=j+1
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>     } else {
>>>>>>
>>>>>>       matriz.dadosAA[j,i]=0
>>>>>>       j=j+1}
>>>>>>
>>>>>>       k=k+1
>>>>>>
>>>>>>     }
>>>>>>   }
>>>>>> }
>>>>>>     a<-matriz.dadosAA[,1]
>>>>>>     write.table(a,"a.txt")
>>>>>>
>>>>>>
>>>>>>
>>>>>> Muito obrigada,
>>>>>>
>>>>>> Michelle
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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.
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> 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.
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> 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.
>>>>
>>>
>>>
>>> _______________________________________________
>>> 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.
>>>
>>
>>
>
> _______________________________________________
> 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/20150304/264658e5/attachment.html>


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