Escolar Documentos
Profissional Documentos
Cultura Documentos
vetor
matriz
data frame
sqrt(num)
faz a raiz quadrada
c()
rbind()
cbind()
as.data.frame()
1:20
vai do número 1 ao 20
class(variavelNome)
rep(3, 4)
repetir o numero 3, 4 vezes
sum()
mean()
sd()
ls()
lista todas as variaveis que estão armazenadas na memoria
rm(variavel)
rm(list=ls())
save.image("meus.dados.RData")
salva tudo
save(minha.matriz, "meuarquivo.RData")
para salvar só a matriz no work directory
getwd()
diz o work directory
setwd("C:/birro")
-----------------------------------------------------------------------------------
------------------------------
meu.novo.arquivo1<-read.csv("arquivo.csv")
atenção, decimal no excel em pt/br é separado com "," e em ingles é "."
para não confundir os dois, o excel em portugues usa ";"
no caso do seu ser em portugues, precisa usar o comando read.csv2("arquivo.csv")
se o arquivo estiver em .txt o comando será read.table("arquivo.txt", dec=",")
nesse ultimo caso, se sua tabela já tiver cabeçalho, use read.table("arquivo.txt",
dec=",", header=TRUE)
read.csv2(file.choose())
você escolhe o arquivo direto do pc, mas o ideal é que vc ja tenha tudo dentro da
pasta do R
variáveis = colunas
observações = linhas
install.packages("CARS")
instalar pacotes
library("CARS")
abre o pacote para trabalhar
?crabs
traz informações (conhecidas como "vignete") sobre a planilha crabs
str(crabs)
traz a estrutura de dados da planilha crabs, um resumão das variáveis, a classe das
variáveis, etc
segunda forma
crabs$varName
resgata direto a variável q tu quer
criar função no R:
function(x, y){
sum<-sum(x)
n<-sum(y)
razao<-sum/n
return(razao)
}
subset(crabs, sp=="B")
cria um conjunto contendo as especies B da planilha craba
== significa LITERALMENTE "B"
minha.anova <- lm(CW~sp, data=crabs)
ANOVA (a anova tbm é um modelo linear, a diferença dela para a regressão linear é
que a variável explicativa é categórica e não continua)
summary(minha.anova)
vê o resumo da anova rodada
o R quando calcula a anova ele usa uma regressão, e nessa regressão ele faz um
teste de significancia prévio
da para pedir só os coeficientes da anova, com o comando:
minha.anova$coefficients
teste T no R:
t.test(CW~sp, data=crabs)
análise de covariância
minha.covariancia<-lm(FL~CW*sp, data=crabs)
anova(minha.covariancia)
-é uma espécie de mistura da análise de variância com a regressão
-é análise de regressão pois tem a relação entre CW e FL, mas tem um outro fator
independente que são as espécies, uma covariável.
-a análise vai buscar justamente se a relação entre CW e FL é diferente entre as
espécies (ou sexos).
no R não dá para ver mais de um gráfico ao mesmo tempo, pois ele plota um em cima
do outro. Mas há um macete para isso:
par(mfrow=c(2,2))
faz com que a janela em que aparecem os gráficos do R seja dividido em 2 linhas e 2
colunas.
plot(minha.regressao)
-quando esse comando é aplicado após o último mencionado "par(mfrow)etc", plotará 4
graficos: Residuals vs Fitted, Normal Q-Q, Scale-Location e Residuals vs Leverage
-o primeiro grafico é o mais importante, nesse plot ele indica com número quais são
os outliers
-no gráfico Q-Q é baseado em quartis, então os residuals são padronizados pelos
quartis teóricos, a diagonal seria a distribuição perfeitamente normal
-o gráfico scale location...
-o gráfico residuals vs leverage...
agora vamos mudar o assunto, veremos uma análise onde as duas variáveis são
categóricas, para investigar se há uma associação entre elas
Qui-quadrado
-esse teste procura avaliar se duas variaveis categoricas são independentes, ou
seja, se uma delas afeta a outra. O exemplo abaixo consta do pacote MASS e envolve
os hábitoss de fumar de estudantes e o nível de atividade física dos mesmos.
-assim como o outro pacote tinha os dados CRABS, nesse tem o survey
>survey$Smoke
mostra toda a tabela
>head(survey$Smoke)
mostra as colunas
>head(survey$Exer)
mostra a coluna Exercise
>fisher.test(tabela.qui)
-também é calculado a partir de uma tabela de contingencia
PACOTES GRÁFICOS DO R
-o R já tem um pacote gráfico proprio que permite fazer gráficos até um nível
extremamente complexo
-na aula focaremos nos principais tipos e nas formas mais simples
>plot(FL~CW, data=crabs, pch=c(19), main="Comprimento do Lobo Frontal",
col=c(rep("red", 100), rep("blue", 100)))
-rep("red", 100) = repetir a cord vermelha para os 100 primeiros dados
-pch = tipo de caráter, nesse caso, bolinha preenchida de cor
>legend("bottomright", c("SpB", "SpO"), pch=19, col=c("red", "blue"))
-colocara legenda do lado direito inferior do grafico.
HISTOGRAMA
>attach(crabs)
-primeiro vc anexa através do comando attach
>hist(FL, data="crabs")
-agora vc calcula o histograma com esse comando
-cuidado, pq nesse comando ele chama o eixo Y de frequency, mas na verdade é um
numero absoluto. Então ao invés de frequency, o correto é o número de casos N.
>hist(FL, freq=F, data="crabs")
-calcula a frequencia relativa
-F = false
-agora o titulo do eixo Y é "density" e ele mostra a frequencia relativa dos dados
GRAFICO DE BARRAS
>mediaSpBMachos<-mean(crabs[1:50,7])
>mediaSpBFemeas<-mean(crabs[51:100,7])
>mediaSpOMachos<-mean(crabs[101:150,7])
>mediaSpOFemeas<-mean(crabs[151:200,7])
-calcula as medias de machos e femeas para a espécie B e especie O.
>mediasCW<-c(mediaSpBMachos, mediaSpBFemeas, mediaSpOMachos, mediaSpOFemeas)
-junta tudo em um único vetor, com 4 valores
>barplot(mediasCW)
-plota o gráfico de barra
-nesse caso, o grafico está sem eixo, sem legenda e etc. É uma versão mais crua,
para personaliza-lo veja o proximo comando
>barplot(mediasCW, main="Médias por espécie por sexo", names.arg=c("B Machos", "B
Fêmeas", "C Machos", "C Fêmeas"), ylab="CW", col="blue", las=1, yLim=c(0,50))
-las=1, é a orientação do texto na horizontal
>sdSpBMachos<-sd(crabs[1:50,7])
>sdSpBFemeas<-sd(crabs[51:100,7])
>sdSpOMachos<-sd(crabs[101:150,7])
>sdSpOFemeas<-sd(crabs[151:200,7])
-calcula todos os desvios
>desviosCW<-c(sdSpBMachos, sdSpBFemeas, sdSpOMachos, sdSpOFemeas)
-junta todos em um vetor
>dados<-as.data.frame(cbind(mediasCW, desviosCW))
-junta tudo em uma planilha com as mediasCW e desviosCW
>attach(dados)
para anexar a nova planilha ao R para que os proprios comandos trabalhem em cima
dela
>meu.barplot<-barplot(mediasCW, names.arg=c("B Machos", "B Fêmeas", "O Machos", "O
Fêmeas"), yLim=c(0,50),
-esse é o plot
>arrows(meu.barplot, mediasCW+desviosCW, meu.barplot, mediasCW-desviosCW,
length=0.3, angle=90, code=3)
-esse é o intervalo de confiança
gráfico de pizzas
-é a mesma treta, esse eu não vou anotar para que eu possa configurar sozinho caso
algum dia eu use esse gráfico
-tem um mosaicplot() que é bem legal
lattice
é um ótimo pacote para fazer outros gráficos, alguns exemplos são o bwplot() e o
barchart()
ggplot2
o ggplot2 é um pacote que tem uma nomenclatura propria, as vezes até diferente do
R, exemplo é o qplot(), que é a mesma coisa do plot() do R, mas o ggplot já tem
esse comando nativo
>ggplot(crabs, aes(FL, CW, colour=sp)) +geom_point()
faz um gráfico lindo, separando as cores automaticamente por espécies e escolhendo
o carácter ao final do comando