R: Criando seu primeiro Data Frame

R: Criando seu primeiro Data Frame

lucca

17 AGO

6 MIN

R: Criando seu primeiro Data Frame

Agora que já aprendemos sobre variáveis, vetores e matrizes, chegou a hora de aprendermos a construir um Data frame no programa R. Nada mais, do que um dos conjuntos de dados mais importantes do R, é uma estrutura base para manipular diversas bases de dados financeiras.

Para facilitar o entendimento, separamos o texto nos seguintes tópicos:

  • O que é (de fato) um Data Frame?
  • Criando o primeiro conjunto de dados
  • Explorando a programação em R
  • Conclusão

Bons estudos!

Data Frame

O que é (de fato) um Data Frame?

Um Data Frame pode ser visto como uma “tabela” formada por um conjunto de dados, é similar a uma planilha do Excel, contendo linhas e colunas. Diferente das matrizes, ele aceita tipos de dados diferentes, com ele podemos ter – por exemplo – uma coluna de números seguida por uma coluna de texto.

Criando o primeiro Data Frame

Como dito acima, a principal vantagem de usarmos data frames é poder usar diferentes tipos de dados nas colunas. Vamos então criar o nosso primeiro conjunto de dados, que armazenará informações de uma carteira de dividendos fictícia contendo TAEE11, CSMG3, CPLE3, BRAP4 e VALE3.

Primeiro, vamos criar o vetor que armazena os nomes das ações.

acoes_dividendos <- c(“TAEE11”, “CSMG3”, “CPLE3”, “BRAP4”, “VALE3”)

Agora, vamos criar o vetor que armazena um yield anual fictício para cada uma das ações:

yield_dividendos <- c(0.11, 0.08, 0.12, 0.108, 0.105)

Obs.: Quando transformamos os vetores em colunas do data frame, o primeiro elemento do vetor de ações ficará na mesma linha que o primeiro elemento do vetor de yield, mas uma coluna antes.

Em seguida, criaremos mais um vetor para armazenar o aporte fictício em cada um dos papéis.

aporte_acoes <- c(1000, 900, 200, 500, 400)

Obs.: O terceiro vetor ficará na terceira coluna, com isso quis dizer que TAEE11, por exemplo, tem um yield de 0.11 e recebeu um aporte de 1000.

Finalmente, vamos criar o conjunto de dados. Para isso, usarei a função data.frame() e passarei os vetores como argumentos (a ordem importa).

carteira_dividendos <- data.frame(acoes_dividendos, yield_dividendos, aporte_acoes)

Feito! O seu primeiro data frame foi criado com sucesso, agora, temos uma pequena “planilha” informando nome, yield e aporte das ações da nossa carteira de dividendos:

carteira_dividendos

acoes_dividendos     yield_dividendos     aporte_acoes

1  TAEE11                       0.110                           1000
2  CSMG3                      0.080                           900
3  CPLE3                        0.120                           200
4  BRAP4                       0.108                           500
5  VALE3                       0.105                            400

Explorando o Data Frame

Existem três funções que são bastante úteis para obtermos informações rápidas sobre data frames grandes:

1. head(): com esta função, obtemos o retorno das primeiras linhas do nosso conjunto de dados (por padrão das seis primeiras linhas). A função head() aceita o argumento “n= …” que define o número de linhas que retornarão no comando.

2. tail(): retorna as últimas linhas do nosso data frame. Também aceita o argumento “n = …” que nos permite escolher o número de linhas que serão retornadas.

3. str(): checa a estrutura do nosso dataframe, com ela podemos descobrir que tipos de dados estão presentes em cada linha e cada coluna.

Antes de testarmos as três funções, criaremos mais um data frame, dessa vez com 10 linhas (similar ao anterior):

acoes_dividendos_2 <- c(“TAEE11”, “CSMG3”, “CPLE3”, “BRAP4”, “VALE3”, “BEEF3”,
“DEXP3”, “ITSA4”, “BBSE3”, “B3SA3”)

yield_dividendos_2 <- c(0.11, 0.08, 0.12, 0.108, 0.105, 0.91, 0.131, 0.05, 0.06, 0.10 )

aporte_acoes_2 <- c(1000, 900, 200, 500, 400, 300, 600, 700, 900, 1000)

carteira_dividendos_2 <- data.frame(acoes_dividendos_2, yield_dividendos_2, aporte_acoes_2) > carteira_dividendos_2

carteira dividendos

Feito! Temos agora um conjunto de dados com 10 linhas utilizando o programa R.

Vamos usar a função head() para explorar as primeiras linhas do nosso data frame:

ações dividendos

Note que ele nos retornou apenas as 6 primeiras linhas, nos dando uma prévia do nosso conjunto de dados.

Agora vamos usar a função tail() para explorar as últimas linhas do novo conjunto:

yield dividendos

Note que ele nos retornou as últimas 6 linhas do nosso Data Frame.

Por fim, vamos testar a função str() no nosso Data Frame “carteira_dividendos_2”:

> str(carteira_dividendos_2)
‘data.frame’: 10 obs. of 3 variables:
$ acoes_dividendos_2: chr “TAEE11” “CSMG3” “CPLE3” “BRAP4” …
$ yield_dividendos_2: num 0.11 0.08 0.12 0.108 0.105 0.91 0.131 0.05 0.06 0.1
$ aporte_acoes_2 : num 1000 900 200 500 400 300 600 700 900 1000

Note que a função nos informa o tipo de dado presente em cada coluna.

Na primeira coluna (acoes_dividendos_2) temos a presença de caracteres (chr). E na segunda (yield_dividendos_2) e na terceira coluna (aporte_acoes_2) temos a presença de variáveis numéricas (num).

Agora que já sabemos os comandos básicos, vamos aprender a acessar subconjuntos do data frame.

Acessando subconjuntos do Data Frame

Assim como as matrizes, podemos encontrar subconjuntos do nosso conjunto de dados. Usando o mesmo data frame do exemplo anterior, vamos encontrar apenas as informações das três primeiras linhas.

Para isso, também usamos o operador […,…] com o primeiro elemento indicando o número de linhas e o segundo (sem nada) indicando para retornar todas as colunas:

carteira_dividendos_2[1:3,]

carteira

dividendos yield

Também podemos acessar as colunas pelo nome, vamos por exemplo acessar a oitava linha da coluna aporte_acoes_2:

> carteira_dividendos_2[8, “aporte_acoes_2”]
[1] 700

Se referindo ao aporte feito na oitava ação (ITSA4) da nossa carteira.

Outro operador fundamental, principalmente para manipularmos data frames relacionados a ações é o “$”, com ele conseguimos obter todos os elementos de uma mesma coluna. Vamos acessar a coluna “acoes_dividendos_2”:

> carteira_dividendos_2$acoes_dividendos_2
[1] “TAEE11” “CSMG3” “CPLE3” “BRAP4” “VALE3” “BEEF3” “DEXP3” “ITSA4”
[9] “BBSE3” “B3SA3”

Usando o comando subset()

comando subset

A função subset() pode nos ajudar a acessar elementos específicos, com ela podemos, por exemplo, acessar só as informações relativas à ação TAEE11. Basta passarmos no argumento o nome do data frame, o nome da variável e o nome da ação:

> subset(carteira_dividendos_2, acoes_dividendos_2 == “TAEE11”)
Ações             DY            Aporte
1 TAEE11      0.11             1000

Também podemos “procurar” por ações por um dividend yield desejado com a mesma função. Vamos procurar ações com o DY de mais de 6%:

subset(carteira_dividendos_2, yield_dividendos_2 > 0.06)

subset yield

Adicionando e removendo colunas de um Data Frame

colunas dataframe

Para adicionarmos colunas no nosso Data Frame, utilizaremos um processo similar ao de criação de variáveis, só que dessa vez usaremos o operador “$” para denotar a adição de uma nova coluna. Vamos no exemplo adicionar a coluna “teste”:

carteira_dividendos_2$teste <- c(1, 1, 100, 100, 100, 100, 100, 100, 100, 100)

yield teste

Também podemos deletar facilmente uma coluna do nosso conjunto de dados, basta apontar a coluna a “NULL”. Vamos deletar a coluna “teste” do exemplo anterior:

carteira_dividendos_2$teste <- NULL

null

Renomeando as colunas do data frame com a função colnames()

carteira dividendos

Uma coisa que pode ter incomodado no processo de manipulação do data frame é o nome das colunas, fica um tanto feio o nome da coluna como “aporte_acoes_2”.

Para resolver, podemos usar a função colnames() e renomear cada uma de nossas colunas passando um vetor de caracteres:

colnames(carteira_dividendos_2) <- c(“Ações”, “DY”, “Aporte”)

aporte

Conclusão

Agora que aprendemos o que é um data frame e como construir um, podemos começar a explorar pacotes de dados financeiros. No artigo de Introdução ao R, aprenderemos a baixar dados da B3, organizá-los em um data frame e construir gráficos estáticos e animados.

Baixe nosso app grátis! No TC você acompanha as principais notícias e cotações do mercado em tempo real, além de ter acesso a canais exclusivos para interagir com os melhores profissionais.

A gente também está no Instagram e no TikTok. Acompanhe!

Estudante de Economia na UFPE

Aprenda tudo sobre contabilidade

E-BOOK

Aprenda tudo sobre contabilidade

Neste e-book — “Contabilidade”, trazemos informações e conceitos importantes sobre contabilidade financeira.

Receba todas as novidades do TC

Deixe o seu contato com a gente e saiba mais sobre nossas novidades, eventos e facilidades.

Receba todas as novidades do TC

Deixe o seu contato com a gente e saiba mais sobre nossas novidades, eventos e facilidades.