Olá! Boas-vindas ao curso R para Data Science: conhecendo a linguagem. Este curso é destinado a quem está dando os primeiros passos tanto na análise de dados em Data Science (Ciência de Dados) quanto na linguagem R.
Me chamo Marcelo Cruz, faço parte da Escola de Dados e vou te acompanhar você durante este curso. Para fins de acessibilidade, vou me autodescrever.
Audiodescrição: Marcelo é um homem de pele clara com barba e cabelos escuros e olhos castanhos. Está utilizando uma camisa preta. Ao fundo, uma parede branca com iluminação verde e azul.
Nosso projeto será focado em responder diversas perguntas sobre os dados que serão disponibilizados pela empresa de people analytics (análise de pessoas) chamada TechSafe.
Vamos responder algumas perguntas como, por exemplo:
E faremos tudo isso utilizando a linguagem R.
Neste curso, a ideia é que você tenha uma aprendizagem ativa para poder tirar o máximo proveito do conteúdo. Pensando nisso, teremos atividades auxiliares desde textos complementares até exercícios práticos, como, por exemplo, lista de exercícios extras para que você possa praticar o conhecimento adquirido durante as aulas.
Este curso não possui nenhum pré-requisito, então você já pode começar a estudar!
Por fim, em caso de dúvidas, fique à vontade para participar do fórum e também da comunidade no Discord da Alura, onde você poderá interagir com monitores de curso e também tirar dúvidas com outras pessoas estudantes.
Vamos começar?
Já temos o nosso projeto aberto e estamos usando o Posit Cloud.
Confira a atividade anterior, onde ensinamos a criar uma conta no Posit Cloud e também a como criar o seu arquivo cloud e importar o documento do projeto que iremos disponibilizar.
No início do arquivo, temos alguns textos e títulos para organizar o nosso projeto, como, por exemplo, o título da aula e também um texto para nos ajudar a entender o nosso objetivo no curso.
A ideia, durante o curso e durante essa aula especificamente, é que trabalhemos para uma empresa de People Analytics (Análise de pessoas) chamada TechSafe. O nosso objetivo será realizar uma análise exploratória e responder às perguntas levantadas pela empresa.
E qual será o nosso primeiro objetivo? A TechSafe forneceu uma tabela de colaboradores e, a partir dessa tabela, teremos que armazenar esses dados e montar essa tabela nós mesmos utilizando a linguagem R.
Após o texto de storytelling (narrativa) do projeto, podemos conferir a tabela que a TechSafe nos forneceu:
Nome | Idade | Salário | Telefone Fixo | Trabalho Remoto |
---|---|---|---|---|
Ana Silva | 28 | 6230.50 | Não possui | Sim |
Carlos Oliveira | 35 | 7500.75 | (11) 1234-5678 | Sim |
Maria Santos | 40 | 8000.25 | (21) 9876-5432 | Não |
João Costa | 32 | 2460.80 | Não possui | Sim |
Fernanda Lima | 27 | 4230.35 | (31) 8765-4321 | Sim |
Nessa tabela, temos algumas informações, como, por exemplo, o nome, idade, salário, telefone fixo e trabalho remoto de algumas pessoas colaboradoras. No total, temos 5 registros de pessoas.
A ideia é que encontremos um meio, utilizando o R, de armazenar esses dados nessa estrutura tabular o mais parecido possível com o que a empresa nos forneceu.
Vamos pensar em como podemos armazenar os dados desses colaboradores utilizando o R. Uma forma de armazenar dados, como um nome, uma idade ou um salário, comum em todas as linguagens de programação, é utilizando variáveis.
Por exemplo, podemos armazenar todos os dados da Ana Silva, como seu nome, sua idade e seu salário.
Embaixo da tabela, vamos criar uma nova célula de código no nosso notebook. Você pode fazer isso de duas formas. Podemos tanto clicar em um botão verde com o ícone C na barra superior quanto usar o atalho "Ctrl + Alt + I" para criar uma célula.
Para armazenar os dados da Ana Silva, vamos criar uma variável chamada nome
, onde vamos atribuir para ela o seu nome.
Diferente de algumas outras linguagens que usam o sinal de igual (
=
) para atribuir um valor a uma variável, no R utilizamos um operador de atribuição composto pelo sinal de menor que e um traço (<-
), parecendo com uma seta.
Logo em seguida, vamos criar um valor de texto, contendo o nome da 'Ana Silva'.
Em seguida, podemos criar também e armazenar a idade dela. Para isso, criamos a variável idade
e atribuímos o número 28
. Também o criamos a variável salario
para atribuir um salário de 6230.50
.
nome <- 'Ana Silva'
idade <- 28
salario <- 6230.50
Dessa forma, podemos executar o bloco de código, clicando no ícone de play no canto superior direito do bloco, para armazenar os dados da Ana Silva.
Porém, nesse caso, seria interessante que encontrássemos uma forma de armazenar todos esses dados de uma vez em uma única variável e não separar cada um deles com seu nome, idade e salário.
Uma forma de armazenar vários dados de uma vez em uma variável, é utilizando os vetores.
Com os vetores, conseguimos armazenar vários dados separados por vírgula em uma única variável.
Para exemplificar, vamos criar um vetor para o caso da Ana Silva. Em uma nova célula, vamos criar uma variável chamada ana_silva
. Para criar um vetor, vamos usar a função combine, que é escrita simplesmente como c()
.
Dentro dos parênteses, vamos separar por vírgula todos os dados da Ana. Primeiro o seu nome, Ana Silva
; depois a sua idade, 28
; e o seu salário, 6230.50
.
Em seguida, colocaremos os dados das colunas de telefone fixo e trabalho remoto. Como ela não possui telefone fixo, colocamos o texto Não possui
, entre aspas. Por fim, colocamos o valor TRUE
(verdadeiro), indicando que ela trabalha remotamente.
No final, vamos exibir os dados digitando ana_silva
em outra linha.
ana_silva <- c('Ana Silva', 28, 6230.50, 'Não possui', TRUE)
ana_silva
[1] "Ana Silva" "28" "6230.5" "Não possui" "TRUE"
Após executar, temos todos os dados da Ana Silva salvos em uma única variável, que seria esse vetor. Dessa forma, é muito mais fácil armazenar diversos valores em uma só variável.
Percebemos que a Ana tem diversos tipos de dados para armazenar os seus valores. No caso, ela tem:
Esses são alguns tipos de dados presentes em diversas linguagens de programação e isso também ocorre no R.
Vamos explorar esses tipos de dados em uma atividade para você conhecer mais a fundo cada um deles e o que eles representam no R.
Por enquanto, já descobrimos como podemos armazenar esses dados com as variáveis e também como podemos armazenar esses dados todos juntos de uma vez em uma só variável utilizando os vetores.
No próximo vídeo, vamos continuar construindo os nossos dados para que, no final, consigamos gerar a tabela que foi pedida pela TechSafe.
Até agora, começamos a criar e armazenar nossos dados por meio de variáveis e vetores.
Uma maneira interessante de identificar dados nos vetores seria nomeando cada um dos seus elementos. Por exemplo, "Ana Silva" seria o nome, então podemos nomear esse campo "Ana Silva" como "nome", o número 28 como sendo a "idade" dela e assim por diante para todos os seus elementos.
Para isso, utilizamos uma função chamada names()
. Abaixo do vetor ana_silva
, vamos criar um novo bloco de código e chamar essa função.
Como a função names()
funciona? Entre parênteses, passamos o nome do vetor que queremos nomear, que seria ana_silva
, no caso. E, com o operador de atribuição (<-
), vamos criar um vetor contendo os nomes desses campos.
Criaremos um vetor com a função combine, escrevendo c()
. Dentro dela, vamos dizer o nome de cada um desses campos na mesma ordem que estão os elementos. No nosso caso, seria primeiro "Nome", seguido por "Idade", depois "Salario" sem acento, "Telefone" e "Trabalho remoto".
Para conferir esse vetor com os nomes, podemos exibir novamente a variável ana_silva
e rodar o código.
names(ana_silva) <- c('Nome', 'Idade', 'Salário', 'Telefone', 'Trabalho remoto')
ana_silva
Nome | Idade | Salário | Telefone | Trabalho remoto |
---|---|---|---|---|
Ana Silva | 28 | 6230.50 | Não possui | TRUE |
O retorno é parecido com uma tabela com os nomes de cada um dos elementos.
Já criamos os dados da primeira pessoa colaboradora que seria a Ana Silva, mas também vamos criar os vetores das outras pessoas com o seguinte código:
carlos_oliveira <- c('Carlos Oliveira', 35, 7500.75, '(11) 1234-5678', TRUE)
maria_santos <- c('Maria Santos', 40, 8000.25, '(21) 9876-5432', TRUE)
joao_costa <- c('Joao Costa', '32', 2460.80, 'Não possui', FALSE)
fernanda_lima <- c('Fernanda Lima', 27, 4230.35, '(31) 8765-4321', TRUE)
Vamos criar uma nova célula para colar os novos vetores e executar esse código.
Agora que já temos os vetores armazenados com os dados de cada uma das pessoas colaboradoras, seria interessante juntar todos esses dados para que consigamos formar algo parecido com uma tabela.
Uma forma de fazer isso no R é através de matrizes, onde conseguimos agrupar esses dados e colocá-los em linhas e colunas.
Nesse caso, podemos pensar como as linhas sendo as pessoas colaboradoras, e as colunas como sendo cada um dos seus dados, como nome, idade, salário e assim por diante.
Para criar uma matriz no R, usamos uma função chamada matrix()
que leva quatro argumentos:
vector
: os dados que vamos usar para criar essa matriz;nrow
: o número de linhas que vamos utilizar nessa matriz;ncol
: o número de colunas que vamos utilizar nessa matriz;byrow
(campo opcional): diz se queremos criar essa matriz por linha ou por coluna. Se for verdadeiro, é por linha. Se for falso, é por coluna.Antes de criar uma matriz, é uma boa prática combinar os vetores que serão usados.
Como queremos juntar todos eles para criar a matriz, é interessante que combinemos todos eles em um vetor só, para que possamos usá-los diretamente na matriz, sem muito trabalho.
Em uma nova célula, vamos criar um vetor chamado colab_combinado
, onde vamos combinar todos os vetores dos colaboradores.
Agora, vamos copiar os nomes dos vetores: ana_silva
, carlos_oliveira
, maria_santos
, joao_costa
e, por fim, fernanda_lima
.
colab_combinado <- c(ana_silva, carlos_oliveira, maria_santos, joao_costa, fernanda_lima)
Desse jeito, vamos conseguir combinar todos os nossos vetores.
Após rodar o código para salvar, vamos criar outro bloco de código para criar a matriz de colaboradores.
Vamos chamar matriz_colab
, onde vamos atribuir a função matrix()
. Dentro dela, vamos passar primeiro os dados, que é o vetor colab_combinado
.
Em seguida, vamos definir o número de linhas que teremos com o argumento nrow
. Como temos 5 colaboradores, vamos ter 5
linhas na nossa matriz.
Nesse momento, não precisamos definir o número de colunas. Podemos simplesmente dizer que queremos que a nossa matriz seja construída por linha, ou seja, colaborador por colaborador. Para isso, colocamos que byrow
será igual a TRUE
.
Por fim, vamos exibir a matriz_colab
.
matriz_colab <- matrix(colab_combinado, nrow = 5, byrow = TRUE)
matriz_colab
- | [,1] | [,2] | [,3] | [,4] | [,5] |
---|---|---|---|---|---|
[1,] | "Ana Silva" | "28" | "6230.5" | "Não possui" | "TRUE" |
[2,] | "Carlos Oliveira" | "35" | "7500.75" | "(11) 1234-5678" | "TRUE" |
[3,] | "Maria Santos" | "40" | "8000.25" | "(21) 9876-5432" | "TRUE" |
[4,] | "Joao Costa" | "32" | "2460.8" | "Não possui" | "FALSE" |
[5,] | "Fernanda Lima" | "27" | "4230.35" | "(31) 8765-4321" | "TRUE" |
Dessa forma, já conseguimos estruturar os dados de forma mais parecida com a tabela que a TechSafe nos pediu. Temos uma coluna de nomes, outra coluna de idades e assim em diante.
Porém, em cima de cada um desses dados, temos apenas um colchete com uma vírgula e um número - algo que nos parece estranho e ainda não tem um significado claro.
Seria interessante, nesse momento, nomear essas colunas e linhas assim como fizemos no vetor. Uma forma de fazer isso com a matriz é simplesmente utilizando duas funções em conjunto.
A função para criar o nome das linhas se chama rownames()
. Nesse caso, abrimos parênteses e passamos o nome da matriz, matriz_colab
, assim como fizemos com a função names()
.
E, assim, podemos atribuir o valor das linhas, ou seja, os nomes de cada uma das linhas.
Nesse caso, como são colaboradores, podemos simplesmente criar um vetor escrito "Colaborador" seguido por seu primeiro nome. Por exemplo, "Colaboradora Ana", "Colaborador Carlos", "Colaboradora Maria", "Colaborador Joao", e "Colaboradora Fernanda".
rownames(matriz_colab) <- c('Colaboradora Ana', 'Colaborador Carlos', 'Colaboradora Maria', 'Colaborador Joao', 'Colaboradora Fernanda')
Agora, para nomear as colunas, simplesmente usamos a função colnames()
, novamente passando o nome da matriz, matriz_colab
.
Para as colunas, como fizemos anteriormente com o vetor da ana_silva
, podemos copiar aquele vetor contendo os nomes dos campos.
Agora basta exibir a matriz novamente, matriz_colab
.
colnames(matriz_colab) <- c('Nome','Idade','Salário','Telefone','Trabalho remoto')
matriz_colab
- | Nome | Idade | Salario | Telefone | Trabalho remoto |
---|---|---|---|---|---|
Colaboradora Ana | "Ana Silva" | "28" | "6230.5" | "Não possui" | "TRUE" |
Colaborador Carlos | "Carlos Oliveira" | "35" | "7500.75" | "(11) 1234-5678" | "TRUE" |
Colaboradora Maria | "Maria Santos" | "40" | "8000.25" | "(21) 9876-5432" | "TRUE" |
Colaborador Joao | "Joao Costa" | "32" | "2460.8" | "Não possui" | "FALSE" |
Colaboradora Fernanda | "Fernanda Lima" | "27" | "4230.35" | "(31) 8765-4321" | "TRUE" |
Como resultado, temos uma matriz parecida com a tabela que a TechSafe nos pediu. Dessa forma, conseguimos concluir o nosso desafio.
Agora, sim, temos nomes nas colunas e linhas com seus respectivos dados. Temos o campo "Nome", "Idade", "Salario", "Telefone" e "Trabalho remoto". E também os nomes de cada uma das linhas, como "Colaboradora Ana", "Colaborador Carlos" e assim por diante.
Nessa aula, aprendemos a armazenar esses dados em variáveis, depois em vetores e, por fim, aprendemos a construir a nossa matriz utilizando a função matrix
, de forma a estruturar nossos dados em linhas e colunas.
Na próxima aula, vamos seguir utilizando as matrizes, porém vamos manipular esses dados agora acessando os seus elementos.
O curso R para Data Science: conhecendo a linguagem possui 93 minutos de vídeos, em um total de 52 atividades. Gostou? Conheça nossos outros cursos de Data Science em Data Science, ou leia nossos artigos de Data Science.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.