Escolar Documentos
Profissional Documentos
Cultura Documentos
1
possui em sua descrição a expressão linear tabela como cabeçalho (i.e., linha com o
model. nome das colunas). Finalmente, utiliza-se
help.start() - inicia-se a versão o argumento sep =“ ” que indica espaço
HTML do sistema de ajuda. Pode-se clicar em branco como separador de colunas
em cima de packages para ver todos os para importar corretamente a estrutura da
pacotes instalados. Depois, pode-se clicar planilha.
em cima de, por exemplo, stats para ver read.csv(arquivo, header =
todas as funções estatísticas disponíveis TRUE, sep =“,”) - importa arquivo .csv
nesse pacote. (i.e., arquivo com vírgula como separador
de colunas). Esta é a forma de impor-
tação mais utilizada nesse curso porque
Instalar e carregar pacotes esse tipo de arquivo pode ser elaborado
na planilha de dados mais utilizada do
Os pacotes podem ser instalados de ser- planeta (i.e., ExcelTM ). As mesmas regras
vidor local (i.e., local mirror) a partir do de read.table() podem ser aplicadas com
próprio programa em “instalar pacotes” no essa função, mas é importante enfatizar
menu Pacotes ou utilizando a função ins- que o tipo de separador é vírgula, sendo
tall.packages() no Console. então utilizado o argumento sep = “,”.
require(epicalc) - carrega pacote pre- write.table(x, arquivo, row.names
viamente instalado no programa. DICA: = TRUE, col.names = TRUE, sep =
carregar sempre o pacote no início de cada “”) - exporta qualquer objeto do R o qual
sessão de trabalho. é primeiramente transformado em uma
planilha de dados antes da exportação.
Assim, deve-se declarar dentro dessa
Importar e exportar base de dados função o “x” (nome do objeto no R), o
nome do arquivo (e.g., “meus.dados.txt”),
É possível elaborar e armazenar bancos primeira linha (row.names = TRUE),
de dados como objetos dentro do R. Mas, primeira coluna (col.names = TRUE) e
neste curso, a recomendação é que o banco o tipo de separador de colunas (sep =
de dados seja elaborado no EpiInfoTM “”).
(http://wwwn.cdc.gov/epiinfo/) e de-
pois importado no R. Adicionalmente,
é possível importar no R arquivos SAS, Criação de objetos no R
Stata, SPSS, Minitab, DBF e EpiInfo
utilizando as funções do pacote foreign. No R, tudo é objeto. A programação
A seguir estão as funções de importação e orientada a objetos é um dos paradigmas
exportação utilizadas nesses curso. modernos das linguagens de programação,
read.table(arquivo, header = sendo assim observada na maioria das lin-
TRUE, sep =“ ”) - importa arquivo em guagens contemporâneas de alto nível, e.g.,
formato de planilha e cria data.frame com Python, Java, . . . . No R, as bases de dados
o mesmo. O nome do arquivo tem de estar vão ser sempre transformadas em objetos
entre aspas e conter a extensão (e.g., .txt). para a análise de dados. O nome de ob-
Em geral, utiliza-se o argumento header = jeto (a gosto do freguês) é atribuído (< −)
TRUE para utilizar a primeira linha da por meio de determinada função que cria
2
objetos (e.g., meu.objeto.do.R < − c(1, 25, Objetos criados na Sessão de traba-
74, 40)). Há, pelo menos, 6 tipos dessas lho
funções que criam objetos, sendo as quais
frequentemente utilizados e ensinados nesse Para o iniciante no R, pode parecer que
curso: vetor, planilha de dados, tabela, fa- os objetos não foram criados utilizando os
tor, lista e função. comandos acima. Utiliza-se a função ls()
c(...) - função genérica que combina para retornar todos os objetos criados e sal-
argumentos para formar um vetor. O vetor vos na sessão de trabalho.
é adimensional, podendo representar linha
ou coluna de uma planilha de dados.
data.frame(...) - cria-se uma plani-
lha de dados com essa função. Em epide- Visualização de objetos no R
miologia, este é um objeto muito utilizado,
sendo pacientes representados nas linhas e A visualização é simples. Uma vez
variáveis nas colunas. que o objeto está criado, utiliza-se o nome
matrix(x, nrow = , ncol =, byrow do objeto para a visualização. Entretanto,
= TRUE) - tabelas de contingência são existem outras formas de ver o objeto. A
criadas com essa função. Para criar uma mais utilizada nesse curso é:
tabela 2x2, deve-se declarar o x (vetor con- str(x) - exibe a estrutura interna do
tendo os valores das 4 caselas), número de objeto (x), informando o tipo de objeto,
linhas e de colunas (nrow = 2, ncol = 2 ). número de observações e classe de cada va-
factor(x, levels=) - transforma ve- riável. Exitem duas classes de variáveis no
tor (x) em fator (i.e., variável categórica) R: primeira, categórica (e.g., factor, cha-
o qual possui categorias (levels =) repre- racter); segunda, numérica (e.g., integer,
sentadas por nomes. Ao fazer essa trans- numeric).
formação, percebe-se que as categorias da
variável ficam entre aspas (“”). É por meio
das aspas que o R reconhece que a variável
Indexação de objetos no R
é do tipo string (i.e., texto).
list(...) - cria-se objeto lista que é o
mais recursivo de todos os objetos do R. A indexação é utilizada para selecio-
Assim, a lista é conhecida, popularmente, nar subconjuntos de valores do objeto no
como “o varal” em que é possível pendurar R. Para objeto adimensional como o vetor,
todo e qualquer tipo de objeto. Por isso, a utiliza-se:
mesma é utilizada para guardar o output da x[n] - seleciona-se o nenésimo elemento
análise de dados. Nesse output podem ha- do vetor x.
ver vários tipos de objetos do R, por exem- Para objetos bi-dimensionais como a
plo um vetor e uma tabela, os quais estão tabela e a planilha de dados, utiliza-se:
salvos dentro dessa lista. x[i, j] - seleciona-se o elemento da li-
function(...) - esta é a função que nha i da coluna j. Para selecionar todas
cria novas funções no R. Mais explicações as linhas e determinada coluna j, utiliza-se
sobre essa função na subseção Programa- x[ , j]. Adicionalmente, podem ser seleci-
ção. onadas as dez primeiras linhas de todas as
colunas (i.e., x[1:10, ]).
3
Coerção de objetos no R Produção de gráficos
4
Customização de gráficos Testes de hipóteses
5
é a função para fazer modelo de regressão obter valores aleatórios dessas distribuições
linear, sendo que lm(y ∼ x1 ) é simples e teóricas. Por exemplo, pode-se ver a seguir
lm(y ∼ x1 + x2 ) é múltiplo. A variável y a função:
é dependente e a variável x é independente. rnorm(x, mean = 0, sd = 1) - uti-
Para ver os resultados do modelo, deve-se lizada para obter valores aleatórios de uma
utilizar a função summary() (e.g., sum- Distribuição Normal em sua forma redu-
mary(lm1), sendo lm1 um objeto da fun- zida (i.e., µ = 0 e σ = 1). O argumento
ção lm()). x é o número de valores que se deseja ob-
Em epidemiologia, o modelo de regres- ter. Os valores de mean e sd podem ser
são logística binomial é também utilizado alterados (e.g., rnorm(x, mean = 18, sd
para, por exemplo, medir a associação entre = 7)).
variáveis de desfecho e explanatória. No R,
esse modelo está incluso na família de mo-
delo lineares generalizados (i.e., generalized Programação de novas funções
linear model). Essa família é representada
pela função glm() e a regressão logística Uma das grandes vantagens do R em
binomial é explicitada dentro dessa função relação aos outros programas de análise es-
(i.e., family = binomial()). tatística é a criação de novas funções. No
glm(y ∼ x1 + x2 + . . . + xn , family R, pode-se criar novas funções utilizando a
= binomial()) - esta função é utilizada função function().
para fazer a regressão logística binomial, minha.função < − function(x, y,
sendo que glm(y ∼ x, family = bino- z) - esta função (e.g., minha.função) tem
mial()) é o modelo simples e glm(y ∼ x1 três argumentos (e.g., x, y e z).
+ x2 , family = binomial()) é o múltiplo. {
A variável de desfecho é y a qual é binomial ...
(e.g., 0 = não-caso; 1 = caso). A variá- return - aqui é explicitado o output
vel explanatória é x que, em geral, deve ter dessa função (i.e., minha.função)
sido transformada em dummy (e.g., 0 = ba- } - entre essas chaves (i.e., {. . . }) são
seline, 1 = presença de exposição ao risco). explicitados os cálculos envolvendo os três
Para ver os resultados do modelo, deve-se argumentos x, y e z.
utilizar a função logistic.display() (e.g.,
logistic.display(glm1), sendo glm1 um
objeto da função glm()). A função lo- Pacotes Epidemiológicos
gistic.display() está disponível no pacote
epicalc (ver subseção Pacotes Epidemio- O R possui muitos pacotes
lógicos). (http://www.r-project.org/). Aqui, nós
utilizamos três pacotes epidemiológicos:
epicalc, epiR e epibasix.
Distribuições epibasix - este pacote tem funções
básicas utilizadas em epidemiologia.
Além da famosa Distribuição Normal, epiR - este pacote tem funções avan-
existem muitas outras distribuições de pro- çadas utilizadas em epidemiologia.
babilidades (e.g., Exponencial, Gamma, epicalc - este pacote tem funções
Poisson, Weibull, t, F, . . . ). No R, pode-se utilizadas para modelos de regressão em
6
epidemiologia.
Para ver o conteúdo de cada pacote,
deve-se utilizar a funções help.start()
(ver na subseção Instalar e carregar
pacotes).