x <- 5 # Atribui o valor 5 à variável x
y <- "Hello, R!" # Atribui a string "Hello, R!" à variável y R - básico
Sobre esse documento
1. Introdução à Linguagem R
O que é R?
R é uma linguagem de programação e um ambiente de software livre para computação estatística e gráficos. Foi criado por Ross Ihaka e Robert Gentleman na Universidade de Auckland, Nova Zelândia, e é amplamente utilizado por estatísticos e cientistas de dados para análise de dados.
Por que usar R?
Gratuito e de código aberto: R é uma linguagem gratuita e de código aberto, o que significa que qualquer pessoa pode usá-la e contribuir para o seu desenvolvimento.
Comunidade ativa: A comunidade R é grande e ativa, proporcionando suporte através de fóruns, grupos de discussão e pacotes adicionais.
Grande variedade de pacotes: Existem milhares de pacotes disponíveis que estendem as funcionalidades do R, facilitando análises complexas e visualizações avançadas.
Visualização de dados: R é conhecido por suas poderosas capacidades de visualização de dados, especialmente com o pacote ggplot2.
2. Instalação do R e RStudio
Instalando o R
Acesse o site do CRAN (Comprehensive R Archive Network).
Escolha o link de download apropriado para seu sistema operacional (Windows, macOS, Linux).
Siga as instruções de instalação fornecidas pelo CRAN.
Instalando o RStudio
RStudio é um IDE (Integrated Development Environment) que facilita a utilização do R.
Acesse o site do RStudio.
Baixe a versão gratuita do RStudio Desktop.
Siga as instruções de instalação.
3. Conceitos Básicos do R
Interface do RStudio
Console: Onde você pode digitar e executar comandos R. Respostas imediatas são exibidas diretamente no console.
Script Editor: Permite escrever e salvar scripts R, que são conjuntos de comandos que podem ser executados em sequência.
Environment/History:
Environment: Exibe os objetos (variáveis, dados, funções) criados durante a sessão.
History: Mostra o histórico dos comandos que você digitou no console.
Plots/Files/Packages/Help:
Plots: Onde gráficos gerados são exibidos.
Files: Permite navegar pelos arquivos do seu sistema.
Packages: Gerencia pacotes instalados.
Help: Acessa a documentação e ajuda sobre funções e pacotes R.
Sintaxe Básica
Variáveis: Armazenam dados e são criadas usando o operador
<-.Funções: Realizam operações em dados. Funções são chamadas pelo nome seguido de parênteses.
sum(1, 2, 3) # Retorna a soma dos números: 6[1] 6Vetores: Sequências de elementos do mesmo tipo. Criados com a função
c().numbers <- c(1, 2, 3, 4, 5) # Vetor de númerosTipos de Dados:
Numéricos: Números, incluindo inteiros e decimais.
a <- 10 b <- 3.14Caracteres: Sequências de texto.
name <- "R Language"Lógicos: Valores verdadeiros (
TRUE) ou falsos (FALSE).flag <- TRUEFatores: Categorizam dados e armazenam como números inteiros com rótulos.
fruits <- factor(c("apple", "banana", "apple", "orange"))
Estruturas de Dados
Vetores: Conjuntos de elementos do mesmo tipo.
vec <- c(1, 2, 3, 4, 5)Matrizes: Tabelas bidimensionais onde todos os elementos são do mesmo tipo.
matrix_data <- matrix(1:9, nrow = 3, ncol = 3)Data Frames: Tabelas bidimensionais onde as colunas podem conter diferentes tipos de dados.
df <- data.frame( Name = c("Alice", "Bob", "Charlie"), Age = c(25, 30, 35), Score = c(90, 85, 88) )Listas: Coleções de elementos que podem ser de diferentes tipos.
lst <- list( name = "John", age = 25, scores = c(85, 90, 95) )
Operações com Dados
Acessar Elementos: Usar colchetes
[]para acessar elementos de vetores, matrizes e data frames.vec[1] # Primeiro elemento do vetor[1] 1matrix_data[2, 3] # Elemento na segunda linha, terceira coluna[1] 8df$Name # Coluna "Name" do data frame[1] "Alice" "Bob" "Charlie"Filtragem de Dados: Selecionar subconjuntos de dados com base em condições.
subset(df, Age > 25) # Linhas onde a idade é maior que 25Name Age Score 2 Bob 30 85 3 Charlie 35 88Operações Aritméticas: Operações matemáticas básicas com vetores.
vec + 2 # Adiciona 2 a cada elemento do vetor vec * 3 # Multiplica cada elemento do vetor por 3[1] 3 4 5 6 7
Exemplos Práticos
Criar um vetor e calcular a média:
scores <- c(85, 90, 88, 92, 87) mean(scores) # Calcula a média dos scores[1] 88.4Criar um data frame e visualizar os dados:
students <- data.frame(Name = c("Alice", "Bob", "Charlie"),Age = c(25, 30, 35), Score = c(90, 85, 88)) head(students) # Mostra as primeiras linhas do data frameName Age Score 1 Alice 25 90 2 Bob 30 85 3 Charlie 35 88
4. Pacotes e Ajuda no R
O que são Pacotes?
Pacotes em R são coleções de funções, dados e documentação que estendem as capacidades básicas da linguagem. Eles são desenvolvidos pela comunidade e podem ser facilmente instalados e utilizados para uma variedade de tarefas, como manipulação de dados, modelagem estatística e visualização.
Instalando Pacotes
Para instalar pacotes, você pode usar a função install.packages(). Por exemplo, para instalar o pacote ggplot2, você usaria o seguinte comando:
install.packages("ggplot2")Esse comando baixa o pacote do CRAN (Comprehensive R Archive Network) e o instala em seu sistema.
Carregando Pacotes
Depois de instalar um pacote, você precisa carregá-lo em sua sessão de trabalho para usá-lo. Isso é feito com a função library(). Por exemplo, para carregar o ggplot2, você usaria:
library(ggplot2)Agora você pode usar todas as funções e dados fornecidos pelo ggplot2.
Atualizando Pacotes
Para manter os pacotes atualizados, você pode usar a função update.packages(). Isso garante que você esteja usando a versão mais recente dos pacotes instalados:
update.packages()Pacotes Populares
Aqui estão alguns pacotes populares e amplamente utilizados em R:
ggplot2: Para visualização de dados.
dplyr: Para manipulação de dados.
tidyr: Para arranjar e limpar dados.
readr: Para importação de dados.
shiny: Para construir aplicativos web interativos.
caret: Para aprendizado de máquina.
Obtendo Ajuda
R fornece várias maneiras de acessar ajuda e documentação:
- Função help(): Para obter ajuda sobre uma função específica.
help(mean) # Exibe a documentação da função meanstarting httpd help server ... done
- Interrogação (?): Um atalho para a função
help().
?mean # Exibe a documentação da função mean- Help de Pacotes: Para visualizar a documentação de um pacote inteiro.
help(package = "ggplot2") # Exibe a documentação do pacote ggplot2- Função example(): Para ver exemplos de como usar uma função.
example(mean) # Exibe exemplos de uso da função mean
mean> x <- c(0:10, 50)
mean> xm <- mean(x)
mean> c(xm, mean(x, trim = 0.10))
[1] 8.75 5.50
- Função apropos(): Para procurar funções com base em palavras-chave.
apropos("plot") # Lista todas as funções que contêm "plot" no nome [1] "assocplot" "autoplot" "barplot"
[4] "barplot.default" "benchplot" "biplot"
[7] "boxplot" "boxplot.default" "boxplot.matrix"
[10] "boxplot.stats" "cdplot" "coplot"
[13] "draw_key_boxplot" "draw_key_dotplot" "fourfoldplot"
[16] "geom_boxplot" "geom_dotplot" "GeomBoxplot"
[19] "GeomDotplot" "ggplot" "ggplot_add"
[22] "ggplot_build" "ggplot_gtable" "ggplotGrob"
[25] "interaction.plot" "is.ggplot" "lag.plot"
[28] "last_plot" "matplot" "monthplot"
[31] "mosaicplot" "plot" "plot"
[34] "plot.default" "plot.design" "plot.ecdf"
[37] "plot.function" "plot.new" "plot.spec.coherency"
[40] "plot.spec.phase" "plot.stepfun" "plot.ts"
[43] "plot.window" "plot.xy" "preplot"
[46] "qplot" "qqplot" "quickplot"
[49] "recordPlot" "replayPlot" "savePlot"
[52] "screeplot" "set_last_plot" "spineplot"
[55] "stat_boxplot" "StatBoxplot" "sunflowerplot"
[58] "termplot" "ts.plot"
- Vignette: Alguns pacotes incluem tutoriais e exemplos mais detalhados chamados vignettes.
vignette("ggplot2-specs") # Abre a vignette sobre especificações do ggplot2
vignette(package = "ggplot2") # Lista todas as vignettes disponíveis no pacote ggplot2Infelizmente nem todos os pacotes possuem vignettes 😢.
Recursos Online
R Documentation: https://www.rdocumentation.org/
Stack Overflow: Um fórum popular onde você pode fazer perguntas e encontrar respostas sobre R.
Comunidade R: Muitos blogs, fóruns e grupos de discussão são dedicados a R e podem ser úteis para resolver dúvidas e aprender novas técnicas.
IAs generativa: Vocês pode (e deve) utilizar sistemas como ChatGTP ou Gemini para verificar e aprimorar seu código. Lembre-se apenas de estudar as soluções propostas;
5. Operações com Dados
Vetores são uma das estruturas de dados mais comuns em R. Aqui estão algumas operações numéricas comuns que você pode realizar com vetores:
- Soma, Subtração, Multiplicação e Divisão
vec1 <- c(1, 2, 3)
vec2 <- c(4, 5, 6)
sum_result <- vec1 + vec2 # Soma: (1+4, 2+5, 3+6) = (5, 7, 9)
sub_result <- vec1 - vec2 # Subtração: (1-4, 2-5, 3-6) = (-3, -3, -3)
mult_result <- vec1 * vec2 # Multiplicação: (1*4, 2*5, 3*6) = (4, 10, 18)
div_result <- vec1 / vec2 # Divisão: (1/4, 2/5, 3/6) = (0.25, 0.4, 0.5)- Soma de Elementos:
sum(vec1) # Soma de todos os elementos: 1 + 2 + 3 = 6[1] 6
- Média, Mediana e Desvio Padrão:
mean(vec1) # Média: (1 + 2 + 3) / 3 = 2[1] 2
median(vec1) # Mediana: 2[1] 2
sd(vec1) # Desvio padrão[1] 1
- Valores Máximos e Mínimos:
max(vec1) # Valor máximo: 3[1] 3
min(vec1) # Valor mínimo: 1[1] 1
- Ordenação
sorted_vec <- sort(vec1) # Ordena em ordem crescente: (1, 2, 3)Operações Numéricas com Matrizes
Matrizes são tabelas bidimensionais de dados numéricos. Aqui estão algumas operações comuns com matrizes:
- Criando uma Matriz:
mat <- matrix(1:9, nrow = 3, ncol = 3) # Cria uma matriz 3x3
mat [,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
- Acesso a Elementos:
element <- mat[2, 3] # Acessa o elemento na segunda linha, terceira coluna
element[1] 8
- Soma de Matrizes:
mat1 <- matrix(1:4, nrow = 2)
mat2 <- matrix(5:8, nrow = 2)
mat_sum <- mat1 + mat2 # Soma elemento a elemento
mat_sum [,1] [,2]
[1,] 6 10
[2,] 8 12
- Multiplicação de Matrizes:
mat_mult <- mat1 %*% mat2 # Multiplicação de matrizes (produto matricial)
mat_mult [,1] [,2]
[1,] 23 31
[2,] 34 46
- Transposição de Matrizes:
mat_transpose <- t(mat) # Transpõe a matriz
mat_transpose [,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
Operações com Caracteres
R também permite manipular dados de texto. Aqui estão algumas operações comuns:
- Concatenação de Strings:
str1 <- "Hello"
str2 <- "World"
concat_str <- paste(str1, str2) # Concatena strings com espaço: "Hello World"
concat_str[1] "Hello World"
- Alterando a Capitalização:
upper_str <- toupper(str1) # Converte para maiúsculas: "HELLO"
lower_str <- tolower(str2) # Converte para minúsculas: "world"
upper_str[1] "HELLO"
lower_str[1] "world"
- Substituição de Padrões:
text <- "Hello, World!"
new_text <- sub("World", "R", text) # Substitui "World" por "R": "Hello, R!"
new_text[1] "Hello, R!"
- Dividindo Strings:
split_str <- strsplit(text, ", ") # Divide a string pelo delimitador ", "
split_str[[1]]
[1] "Hello" "World!"
Operações com Fatores
Fatores são usados para representar dados categóricos. Aqui estão algumas operações comuns:
- Criando Fatores:
fruits <- factor(c("apple", "banana", "apple", "orange"))
fruits[1] apple banana apple orange
Levels: apple banana orange
- Níveis de Fatores:
levels(fruits) # Exibe os níveis: "apple", "banana", "orange"[1] "apple" "banana" "orange"
- Reordenando Níveis:
fruits <- factor(fruits, levels = c("banana", "apple", "orange"))
fruits[1] apple banana apple orange
Levels: banana apple orange
- Convertendo Fatores em Números ou Strings:
numeric_factors <- as.numeric(fruits) # Converte fatores para números
character_factors <- as.character(fruits) # Converte fatores para strings
numeric_factors[1] 2 1 2 3
character_factors[1] "apple" "banana" "apple" "orange"
Essas operações básicas com vetores, matrizes, caracteres e fatores são fundamentais para a manipulação de dados em R.