rm(list=ls()) # chamando o conjunto de dados require(readxl) dados <- read_xlsx("biodiversidade.xlsx") # retirando uma amostra do conjunto de dados # amostragem simples require(car) amostra.simples <- some(dados, n=100, replace=FALSE) ## sem reposição # some(dados, n=100, replace=TRUE) ## com reposição # amostragem estratificada require(sampling) ## defininfo o tamanho da amostra que eu quero n <- 200 ## tamanho de cada estrato (Destino) tamanho.estrato <- with(dados, tapply(Altura, Destino, length)) ## tamanho da população N <- sum(tamanho.estrato) ## Fração da amostra f <- n/N ## Fração da amostra em cada estrato tamanho.amostra <- f*tamanho.estrato ## Amostragem estratificada s <- strata(dados, stratanames = "Destino", size = tamanho.amostra, method = "srswor") ## observando os valores das variáveis das amostras selecionadas getdata(dados$Altura, s) # amostragem sistematica resposta <- dados$Altura N <- 20000 # tamanho da minha população n <- 200 # tamanho da amostra desejada k <- N/n # tamanho do passo ou intervalo entre as observações sorteado <- sample(1:k, 1)# posição em que começa a seleção das observações posicao <- seq(sorteado, N, k) # formação da amostra sistemática mas com as posições length(posicao) # tamanho do vetor "posicao" confere com o tamanho n = 200 posicao[20] # especificando a observação que quero da amostra sistemática amostra.posicao <- cbind(resposta, seq = 1:length(resposta)) # montando um conjunto indicando as posições das observações amostra.sist <- amostra.posicao[posicao,] # chamando somente as observações selecionadas # na amostragem sistemática # função resumo syst_samp <- function (response, n, initial){ N <- length(response) k <- N/n position <- seq(initial, N, k) sample.position <- cbind(seq = 1:N, response) syst <- sample.position[position, ] colnames(syst) <- c("Systematic position", "Observed values") print(syst) } syst_samp(dados$Altura, 100, 20) # Tabelas, histogramas, boxplot e frequências e estatísticas descritivas somente para amostragem simples ## Tabela de distribuição de frequências de Classes require(fdth) tabela1 <- fdt(amostra.simples$Altura, breaks="Sturges") # considerando o vetor de respostas como um todo tabela2 <- fdt(amostra.simples$Altura[amostra.simples$Espécie == "roxinho"], breaks="Sturges") # para a espécie "roxinho" ## Histograma frequência absoluta para o vetor de respostas como um todo plot(tabela1,x.round=2, xlab="Altura (m)", ylab="Frequências Absolutas") ## Histograma frequência relativa plot(tabela1, x.round=2, type='rfh', xlab="Altura (m)", ylab="Frequências Relativas") ## Histograma frequência relativa percentual plot(tabela1, x.round=2, type='rfph', xlab="Altura (m)", ylab="Frequências Relativas Percentual") ## Ogiva de Galton plot(tabela1, type='cfp', xlab="Altura (m)", ylab="Frequência Acumulada", col = "blue", pch = 19) ## Estatísticas de interesse with(amostra.simples, tapply(Altura, Espécie, length)) # número de observações por espécie with(amostra.simples, tapply(Altura, Espécie, mean)) # média por espécie with(amostra.simples, tapply(Altura, Espécie, sd)) # desvio padrão por espécie with(amostra.simples, tapply(Altura, Espécie, var)) # variância por espécie ## Histogramas simples para Altura hist(amostra.simples$Arvore, main = "Histograma para a variável resposta Altura", xlab = "Valores de Altura") ## Boxplot para Altura boxplot(amostra.simples$Altura)