Descobrir o dia da semana de várias datas

Não vou falar de uma data apenas, já que é a mesma ideia para quando se faz para muitas. Alguns links de ajuda neste caso estão aqui e aqui.
A situação era data em formato ddmmaaaa e como Factor com 365 níveis. Os dados eram provenientes do SINASC. Todos os tutoriais sobre o assunto assumem que a data está em chr, mas não era o meu caso. Mais um passo tinha que ser feito: converter de Factor para chr. O seguinte seria converter de chr para Date. Como segue:
data2 <- as.character(dados$data1)
data3 <- as.Date(data2,format="%d%m%Y")
No format da segunda linha eu digo como a data está escrita. Na ajuda e em vários outros lugares, como aqui, existem tabelinhas explicando o significado dos símbolos. Até este ponto falei para o R que a minha variável data3 contém datas. Se quiser posso separar o ano, o dia do mês, e entre outros, o dia da semana. Os outros dão um pouquinho mais de trabalho, já que o dia da semana tem uma função para isso.
dia.semana <- weekdays(data3)
Pronto. Tenho uma nova variável chamada dia.semana com o dia da semana que as crianças nasceram. Foi a parte do trabalho que eu estava mais temerosa em fazer, mas até que foi fácil - depois de gastar uma hora procurando o que fazer e como fazer corretamente.

Referências:
Farnswort, Grant V. 2008. Econometrics in R.
Quick-R: Dates. Acesso em 06 de Outubro de 2011.

Escrever dados em outros formatos

Como disse no outro blog e com os motivos explicitados neste post, agora o blog volta de vez para seu endereço de origem. E agora com o template novo. Espero, de verdade, postar com mais frequência.
Eu particularmente não gosto muito de salvar os dados no Excel. Depois que li em algum lugar falando muito mal do Excel como armazenador de dados, passei a usar o formato .txt – infelizmente não tenho o link.
Por outro lado não acho conveniente escrever tudo no Bloco de Notas. Então primeiro escrevo tudo no Excel e salvo como texto, existe essa opção mágica. Mas no Calc não existe, até a última vez que procurei não tinha. E agora? (Existe uma opção, veja o primeiro comentário deste post.) É possível fazer isso no R.
Seguindo os passos do outro post, importe o banco de dados. E depois exporte no formato desejado. No exemplo vou importar um .csv e exportar um .txt. Na última linha do exemplo confirmo se é possível ler o arquivo criado no R.
dados <- read.csv2("dados.csv")
write.table(dados, file=”dados.txt”)
dados2 <- read.table(“dados.txt”)
Pronto. É bem simples mesmo. Também é possível fazer o contrário, sair de um .txt e escrever um .csv com a função write.csv. Mas cuidado, se for importar do jeito comum com read.csv ou read.csv2 um arquivo que foi criado desta maneira, pode dar errado. O ideal é seguir o que a ajuda diz, e que é a última linha do exemplo.
write.csv(dados2, "dados2.csv")
dados3 <- read.table("dados2.csv", header = TRUE, sep = ",", row.names = 1)
O Quick-R ensina a fazer isso para diversos tipos de arquivos. E também existe o R Data Import/Export. Vale a pena pelo menos olhar os dois.
O pacote xlsReadWrite sugerido pelo Quick-R parece ser muito interessante, se você conseguir instalar/usar. Tentei de tudo e nada. Dizem que o criador dele é muito bonzinho e se você mandar e-mail ele responde, mas nunca tomei coragem para fazer isso. Por enquanto, quando preciso exportar para .xls, utilizo esse código que aprendi na lista e não é muito confiável:
dados4
write.table(dados4, file="nome.xls", row.names=FALSE, col.names=FALSE, sep="\t")
Se fizer do jeito que está, apenas os dados aparecerão, sem o nome das linhas e colunas. Para que eles apareceram é só retirar os argumentos row.names e col.names. O nome das colunas aparecerá deslocado uma célula para a esquerda.
Atenção: Como não é algo oficial – leia-se, gambiarra – pode dar errado sem motivo aparente. Cuidado ao fazer isso. Comigo sempre deu certo fazendo desse jeito.
Para encerrar, um exemplo no R Commander. Baseado em fatos, e desespero, reais. Pelo menos a nota não era minha, eu só era a monitora. lol Resumindo a novela: Ninguém sabia qual era a extensão do banco de dados. Só que isso não é tão importante no R Commander. Mas inventamos de importar o banco de dados para o R “normal”. Gastei umas duas horas tentando descobrir a extensão e nada. A solução foi mandar um e-mail para o professor, que resolveu o problema.
Apesar do problema estar resolvido fiquei pensando no que poderia ser feito caso tudo desse errado. Então, o ideal seria fazer o seguinte caminho no Commander:
Dados > Carregar Conjunto de dados
Dados > Conjunto de dados ativo > Exportar conjunto de dados ativo
Na primeira linha leio o banco de dados e na segunda o escrevo em outro formato, neste caso .txt. Assim eu saberia o formato em que o arquivo está e ele poderia ser lido no R “normal” com o comando read.table por exemplo. Não tive essa ideia, que no fundo é bem boba, a tempo. Fica guardada para uma próxima oportunidade.
Os motivos que levam alguém a escrever dados em outros formatos são infinitos, e poder fazer isso seja lá qual for a razão é uma das coisas que eu mais gosto no R.

Nos mudamos

Depois de muito pensar, resolvi mudar meu outro blog de endereço – um que não tem nada a ver com R. No dia da ‘inauguração’ pensei que poderia colocar este blog no mesmo novo endereço. Apesar de ficar um pouco apreensiva quanto a isso, resolvi tentar. Acredito que será mais fácil gerenciar os dois de um mesmo endereço. Todos os posts estão com o marcador R. O novo endereço é:

http://nerdcraftices.blogspot.com/search/label/R

O problema principal reside nos assuntos de cada um. Um fala de crafts e scrapbooking e o outro fala de R. É muito difícil achar uma pessoa que se interesse pelos dois. Para contornar esse problema, descobri como fazer um feed só com os posts do R. O endereço do feed é:http://nerdcraftices.blogspot.com/feeds/posts/default/-/R Já tem um post novo, que fala sobre a palestra do R no Eneste. A propósito, os gráficos da header foram feitos no R.