library(learnr) knitr::opts_chunk$set(echo = TRUE) tutorial_options(exercise.eval = FALSE) d <- data.frame(candidatos=1:1000,n1=sample(0:10,1000,replace=TRUE), n2= sample(0:10,1000,replace=TRUE))
Se tivermos um objeto do tipo matriz, podemos converte-lo em data.frame
.
(notas <- matrix(sample(7:10,25,replace=TRUE),5,5)) notas.df <- as.data.frame(notas) is.data.frame(notas) is.data.frame(notas.df)
Utilize a função names
para dar nomes às colunas do data.frame
notas.df
.
notas <- matrix(sample(7:10,25,replace=TRUE),5,5) notas.df <- as.data.frame(notas) names(notas.df) <- c("Teste1","Teste2","Prova1","Teste3","Prova2") notas.df
Vamos criar uma lista com variáveis sexo
e idade
.
moradores <- list(sexo=sample(c("F","M"),50,T),idade=sample(2:70,50,T))
Verifique a lista:
str(moradores) mode(moradores)
Podemos extrair algumas estatísticas básicas e uma tabela de frequências:
summary(moradores$idade) table(moradores$sexo)
Depois de criada uma lista, podemos adicionar novos elementos.
moradores$trabalha <- sample(c(T,F),50,T) moradores$presente <- sample(c(1,0),50,T) str(moradores)
Também podemos excluir elementos da lista
moradores$idade<-NULL str(moradores)
Alguns comandos interessantes da lista:
#tamanho da lista (quantos elementos tem) length(moradores) #tamanho de um elemento da lista length(moradores$trabalha) #nomes dos elementos names(moradores)
tapply()
e lapply()
Usando a função tapply
podemos calcular a média dos elementos da lista. Calcule a diade mpedia por sexo:
tapply(moradores$idade, moradores$sexo, mean)
Usando a função sapply
(ou lapply
) podemos calcular a média da idade, utilizando a função which
para selecionar o elemento da lista:
lapply(moradores[which(names(moradores)=="idade")], mean)
Considere o data frame definido por:
d <- data.frame(candidatos=1:1000,n1=sample(0:10,1000,replace=TRUE), n2= sample(0:10,1000,replace=TRUE))
data.frame
utilizando o comando str()
.str(d)
(2 + 2)/2
d$m.n1.n2<-(d$n1+d$n2)/2
mean()
mean(d$n1) mean(d$n2)
print()
print(d$candidatos[which(d$m.n1.n2<5)])
length()
length(d$candidatos[which(d$m.n1.n2>7)])
Crie uma lista que contenha: seu nome todo, sexo, idade, seus três filmes preferidos e uma lista com as datas de nascimento dos seus parentes mais próximos incluindo seus nomes.
list()
lista <- list("Alinne de Carvalho Veiga", "Feminino", "43" , c("Notin Hill", "Novica Rebelde", "Sociedade dos Poetas Mortos"), list(c("Paula", "Mãe", "Sobrimha"), c("28/04", "11/6", "4/11"))) lista
Construa uma lista que tenha uma matriz 2 x 2
e um vetor de 10 componentes (valores a sua escolha).
list()
lista <- list(matriz=diag(2),vetor=sample(c(1:10))) lista
Seja L
uma lista definida por: L<-list(a1=seq(2,20,2),a2=1:10,a3=sample(20,10))
Construa uma matriz M
cujas colunas sejam formadas pelos elementos desta lista.
unlist()
matrix()
L <- list(a1=seq(2,20,2),a2=1:10,a3=sample(20,10)) (m<-matrix(unlist(L),10,3))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.