Oi Luis,

Assim fica bem mais elegante =)
Muito obrigada pela dica!

Queria aproveitar para perguntar se você saberia um jeito de obter do yahoo
usando o R todos os tickers das companhias pertencentes ao NIKKEI, porque
ao invés de escrever os 225 tickers no symbol, eu puxaria direto.

Muito obrigada mais uma vez!

Em 13 de março de 2015 09:50, Luis G. S. e Silva <[email protected]>
escreveu:

> Michelle,
>
> Essa tarefa pode ser realizada eliminado os loops (for) e algumas linha
> também.
> Dá uma olhadinha no script abaixo.
>
> Abraço
>
> symbol<-c("XOM","AAPL", "DIS")
>
> getCSV <- function(symbol){
>   URL <- paste0("http://chartapi.finance.yahoo.com/instrument/1.0/";,
> symbol, "/chartdata;type=quote;range=1d/csv")
>   tab <- read.table(URL, sep = ",", dec = ".", skip = 17)
>   colnames(tab) <-
> paste(c("timestamp","close","high","low","open","volume"), 1:6, sep = "-")
>   rownames(tab) <- paste(symbol, 1:nrow(tab))
>   SAIDA <- paste0("Dados",symbol,"yahoo20150312.txt")
>   write.table(tab, file = SAIDA, sep = ";", dec = ".", header = T)
> }
>
> sapply(symbol, getCSV)
>
> 2015-03-13 9:34 GMT-03:00 Michelle Bau Graczyk <[email protected]>:
>
> Oi Augusto!
>>
>> Deu certo! Foi puro descuido mesmo com o symbols e o symbol!
>>
>> Muito obrigada!!
>>
>> Em 13 de março de 2015 09:00, Augusto Ribas <[email protected]>
>> escreveu:
>>
>> Ignore meu comentário anterior, não tinha olhado a identação direito.
>>>
>>> symbols<-c("XOM","AAPL", "DIS")
>>> for(i in 1:length(symbols)){
>>>     symbol <- symbols[i]
>>>     URL <- paste0("http://chartapi.finance.yahoo.com/instrument/1.0/";,
>>>               symbol, "/chartdata;type=quote;range=1d/csv")
>>>     tmp <- readLines(URL)
>>>     tabela<-tmp[18:length(tmp)]
>>>     tabela_split<-strsplit(tabela,",")
>>>     # matriz para receber os dados
>>>
>>> dados<-matrix(NA,ncol=length(tabela_split[[1]]),nrow=length(tabela_split))
>>>     for(j in 1:length(tabela_split)) {
>>>         dados[j,]<-as.numeric(tabela_split[[j]])
>>>     }
>>>     # organizar os nomes de colunas linhas
>>>     dimnames(dados)<-list(paste(symbol,1:length(tabela_split)),
>>>
>>> paste(c("timestamp","close","high","low","open","volume"),
>>>                                 1:length(tabela_split[[1]])))
>>>     SAIDA<-paste0("Dados",symbol,"yahoo20150312.txt")
>>>     write.table(dados,file= SAIDA)
>>>     }
>>>
>>> Mas seu codigo funcionou aqui, so mudei o começo ali
>>>
>>> symbol<-c("XOM","AAPL", "DIS")
>>> for(i in seq_along(symbols)){
>>>
>>>   symbol <- symbols[i]
>>>
>>>
>>> vc criava um vetor symbol e fazia o for no symbols.
>>> Mas rodando ali em cima ele criou certinho as três planilhas.
>>>
>>>
>>> Em 13 de março de 2015 07:51, Augusto Ribas <[email protected]>
>>> escreveu:
>>>
>>> Imagino que você está salvando tudo mas sobrepondo os dados, salve com
>>>> nomes de arquivos diferentes, por exemplo no final do seu script tente algo
>>>> assim
>>>>
>>>>
>>>> write.table(dados,file= paste0("SAIDA_",i,".txt"))
>>>>
>>>>
>>>> Assim, você vai salvar um
>>>> SAIDA_XOM.txt
>>>> SAIDA_AAPL.txt
>>>> SAIDA_DIS.txt
>>>>
>>>>
>>>> E assim vai.
>>>>
>>>> Agora eu acho que você salva o XOM em SAIDA, depois salva por cima os
>>>> dados do AAPL no SAIDA, depois salva por cima os dados do DIS
>>>>
>>>> a função write.table sempre salva no mesmo lugar, o file= a mesma coisa
>>>> sempre.
>>>>
>>>> Em 12 de março de 2015 17:51, Michelle Bau Graczyk <[email protected]
>>>> > escreveu:
>>>>
>>>>> Boa noite,
>>>>>
>>>>> Com ajuda de colegas do grupo montei um programa para pegar dados do
>>>>> yahoo e organiza-los. Porém, eu preciso pegar para vårias empresas e por
>>>>> isso fiz um laço com o uso da função for para imprimir a saida. Porem, eu
>>>>> não estou conseguindo fazer com que ele imprima todos e sim, somente o
>>>>> ultimo elemento. No caso abaixo, ele só imprime e salva o arquivo 
>>>>> referente
>>>>> a empresa DIS enquanto eu também quero das outras.
>>>>> Já tentei colocar o write.table no final da última chaves mas também
>>>>> não imprimiu de todos os arquivos.
>>>>>
>>>>> Muito obrigada!
>>>>>
>>>>> Michelle
>>>>>
>>>>>
>>>>> symbol<-c("XOM","AAPL", "DIS")
>>>>> for(i in seq_along(symbols)){
>>>>>
>>>>>   symbol <- symbols[i]
>>>>>
>>>>> URL <- paste0("http://chartapi.finance.yahoo.com/instrument/1.0/";,
>>>>>               symbol, "/chartdata;type=quote;range=1d/csv")
>>>>>
>>>>> tmp <- readLines(URL)
>>>>>
>>>>> tabela<-tmp[18:length(tmp)]
>>>>>
>>>>> tabela_split<-strsplit(tabela,",")
>>>>>
>>>>> # matriz para receber os dados
>>>>>
>>>>> dados<-matrix(NA,ncol=length(tabela_split[[1]]),nrow=length(tabela_split))
>>>>>
>>>>>
>>>>> for(j in 1:length(tabela_split)) {
>>>>>   dados[j,]<-as.numeric(tabela_split[[j]])
>>>>> }
>>>>>
>>>>>
>>>>> # organizar os nomes de colunas linhas
>>>>>
>>>>> dimnames(dados)<-list(paste(symbol,1:length(tabela_split)),paste(c("timestamp","close","high","low","open","volume"),1:length(tabela_split[[1]])))
>>>>>
>>>>> SAIDA<-paste0("Dados",symbol,"yahoo20150312.txt")
>>>>>
>>>>> write.table(dados,file= SAIDA)
>>>>>
>>>>> }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> R-br mailing list
>>>>> [email protected]
>>>>> 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.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Grato
>>>> Augusto C. A. Ribas
>>>>
>>>> Site Pessoal: http://recologia.com.br/
>>>> <http://augustoribas.heliohost.org>
>>>> Github: https://github.com/Squiercg
>>>> Lattes: http://lattes.cnpq.br/7355685961127056
>>>>
>>>
>>>
>>>
>>> --
>>> Grato
>>> Augusto C. A. Ribas
>>>
>>> Site Pessoal: http://recologia.com.br/
>>> <http://augustoribas.heliohost.org>
>>> Github: https://github.com/Squiercg
>>> Lattes: http://lattes.cnpq.br/7355685961127056
>>>
>>> _______________________________________________
>>> R-br mailing list
>>> [email protected]
>>> 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
>> [email protected]
>> 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.
>>
>
>
>
> --
> Luís Gustavo Silva e Silva
>
> _______________________________________________
> R-br mailing list
> [email protected]
> 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
[email protected]
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.

Responder a