Carregando banco de dados

dados <- read.csv2("https://raw.githubusercontent.com/DATAUNIRIO/Base_de_dados/master/arte_MOMA.csv")

Carregando bibliotecas

library(readxl)
## Warning: package 'readxl' was built under R version 4.2.2
library(flextable)
## Warning: package 'flextable' was built under R version 4.2.2
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.2.2
library(tibble)
## Warning: package 'tibble' was built under R version 4.2.2
library(tidyr)
## Warning: package 'tidyr' was built under R version 4.2.2
library(forcats)
## Warning: package 'forcats' was built under R version 4.2.2
library(knitr)
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.2
library(ggthemes)
## Warning: package 'ggthemes' was built under R version 4.2.2
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.2.2
## Warning: package 'readr' was built under R version 4.2.2

Atividade 1: Quantas pinturas existem no MoMA?

noquote(paste("Existem", dados %>% nrow(), "pinturas no MoMA."))
## [1] Existem 2253 pinturas no MoMA.

Quantas variáveis existem no banco de dados?

noquote(paste("E existem", dados %>% ncol(), "variáveis no banco de pinturas do MoMA."))
## [1] E existem 24 variáveis no banco de pinturas do MoMA.
cat(names(dados))
## X title artist artist_bio artist_birth_year artist_death_year num_artists n_female_artists n_male_artists artist_gender year_acquired year_created circumference_cm depth_cm diameter_cm height_cm length_cm width_cm seat_height_cm purchase gift exchange classification department
paste("Entretanto, 5 delas estão vazias. Logo, somente podemos trabalhar com 19 variáveis")
## [1] "Entretanto, 5 delas estão vazias. Logo, somente podemos trabalhar com 19 variáveis"

Atividade 2: Qual é a primeira pintura adquirida pelo MoMA? Qual ano? Qual artista? Qual título?

paste("O MoMA possui", 
      dados %>% 
        filter(year_acquired == min(year_acquired, na.rm = T)) %>% 
        nrow(), 
      "quadros como os mais antigos. Ambos são do mesmo ano:", 
      dados %>% 
        filter(year_acquired == min(year_acquired, na.rm = T)) %>% 
        filter(row_number() == 1) %>% 
        pull(year_acquired))
## [1] "O MoMA possui 2 quadros como os mais antigos. Ambos são do mesmo ano: 1930"
cat("Os títulos dessas obras são:", 
    dados %>% 
      filter(year_acquired == min(year_acquired, na.rm = T)) %>% 
      pull(title) %>% 
      first(), 
    "e", 
    dados %>% 
      filter(year_acquired == min(year_acquired, na.rm = T)) %>% 
      pull(title) %>% 
      last(), 
    ", pertencentes respectivamente a", 
    dados %>% 
      filter(year_acquired == min(year_acquired, na.rm = T)) %>% 
      pull(artist) %>% 
      first(), 
    "e", 
    dados %>% 
      filter(year_acquired == min(year_acquired, na.rm = T)) %>% 
      pull(artist) %>% 
      last())
## Os títulos dessas obras são: House by the Railroad e Seated Nude , pertencentes respectivamente a Edward Hopper e Bernard Karfiol

Atividade 3:Qual é a pintura mais antiga da coleção? Qual ano? Qual artista? Qual título?

cat(paste("A obra mais antiga (em ano de criação) no MoMA é do ano de", 
          min(dados$year_created, na.rm = T), 
          ", feita por", 
          dados %>% 
            filter(year_created == min(year_created, na.rm = T)) %>% 
            pull(artist), 
          "e entitulada", 
          dados %>% 
            filter(year_created == min(year_created, na.rm = T)) %>% 
            pull(title)))
## A obra mais antiga (em ano de criação) no MoMA é do ano de 1872 , feita por Odilon Redon e entitulada Landscape at Daybreak

Atividade 4:Quantos artistas distintos existem?

paste("Existem ", 
      dados %>% 
        count(artist) %>% 
        count() %>% 
        pull(n),
      "artistas diferentes no MoMA.")
## [1] "Existem  989 artistas diferentes no MoMA."

Atividade 5: Qual artista tem mais pinturas na coleção?

noquote(paste("O/A artista que tem mais obras na coleção do MoMA é:",
              dados %>% count(artist) %>% arrange(-n) %>% pull(artist) %>% first(),
              "com um total de",
              dados %>% count(artist) %>% arrange(-n) %>% pull(n) %>% first(),
              "obras."))
## [1] O/A artista que tem mais obras na coleção do MoMA é: Pablo Picasso com um total de 55 obras.

Atividade 6: Quantas pinturas existem por este artista?

noquote(paste("São", dados %>% count(artist) %>% arrange(-n) %>% pull(n) %>% first(),
              "obras deste artista."))
## [1] São 55 obras deste artista.

Atividade 7: Quantas pinturas de artistas masculinos e femininos?

dados %>%
  count(artist_gender) %>%
  mutate(n = as.character(paste(n, "pinturas")))
##   artist_gender             n
## 1        Female  252 pinturas
## 2          Male 1991 pinturas
## 3          <NA>   10 pinturas

Atividade 8: Quantos artistas de cada gênero existem?

dados %>% count(artist_gender, artist) %>% count(artist_gender) %>% mutate(n = as.character(paste(n, "artistas")))
##   artist_gender            n
## 1        Female 143 artistas
## 2          Male 837 artistas
## 3          <NA>   9 artistas

Atividade 9: Em que ano foram adquiridas mais pinturas?

paste("Foram adquiridas", 
      dados %>% 
        count(year_acquired) %>% 
        arrange(-n) %>% 
        pull(n) %>% 
        first(), 
      "obras no ano de",
      dados %>% 
        count(year_acquired) %>% 
        arrange(-n) %>% 
        pull(year_acquired) %>% 
        first())
## [1] "Foram adquiridas 86 obras no ano de 1985"

Atividade 10: Em que ano foram Criada mais pinturas?

noquote(paste("No ano",
              dados %>% count(year_created) %>% arrange(-n) %>% pull(year_created) %>% first(),
              "foram criadas", 
              dados %>% count(year_created) %>% arrange(-n) %>% pull(n) %>% first(),
              "obras."))
## [1] No ano 1977 foram criadas 57 obras.

Atividade 11: Em que ano foi adquirida a primeira pintura de uma artista feminina (solo)? Quando essa pintura foi criada? Qual artista? Qual título?

paste("A primeira pintura de uma artista feminina foi adquirida em",
      dados %>% 
        filter(artist_gender == "Female") %>% 
        arrange(year_acquired) %>% 
        pull(year_acquired) %>% 
        first(), 
      "e foi feita por",
      dados %>% 
        filter(artist_gender == "Female") %>% 
        arrange(year_acquired) %>% 
        pull(artist) %>% 
        first(),
      ". Tem como título",
      dados %>% 
        filter(artist_gender == "Female") %>% 
        arrange(year_acquired) %>% 
        pull(title) %>% 
        first(),
      "e foi criada em",
      dados %>% 
        filter(artist_gender == "Female") %>% 
        arrange(year_acquired) %>% 
        pull(year_created) %>% 
        first())
## [1] "A primeira pintura de uma artista feminina foi adquirida em 1937 e foi feita por Natalia Goncharova . Tem como título Landscape, 47 e foi criada em 1912"

Atividade 12: Qual o artista ficou mais tempo vivo?

paste("O artista que ficou mais tempo vivo foi",
      dados %>% 
        mutate(idade = artist_death_year - artist_birth_year) %>% 
        arrange(-idade) %>% 
        pull(artist) %>% 
        first(),
      "que viveu por",
      dados %>% 
        mutate(idade = artist_death_year - artist_birth_year) %>% 
        arrange(-idade) %>% 
        pull(idade) %>% 
        first(), 
      "anos.")
## [1] "O artista que ficou mais tempo vivo foi Dorothea Tanning que viveu por 102 anos."

Atividade 13: Qual a idade média de um artista?

paste("A idade média de um artista do MoMa é de",
      dados %>% 
        mutate(idade = artist_death_year - artist_birth_year) %>% 
        summarise(media = mean(idade, na.rm = T)) %>% 
        pull(media) %>% 
        format(., digits = 1),
      "anos.")
## [1] "A idade média de um artista do MoMa é de 75 anos."

Atividade 14: Artistas homens vivem mais do que as mulheres?

dados %>%
  mutate(idade = artist_death_year - artist_birth_year) %>%
  group_by(artist_gender) %>%
  summarise(media = mean(idade, na.rm = T)) %>% 
  mutate(media = format(media, digits = 3))
## # A tibble: 3 × 2
##   artist_gender media
##   <chr>         <chr>
## 1 Female        74.0 
## 2 Male          74.7 
## 3 <NA>          72.0

Um último desafio: recriar o gráfico do fivethirtyeight:

dados %>% 
  mutate(height_cm = as.double(str_replace_all(height_cm, ",", ".")),
         width_cm = as.double(str_replace_all(width_cm, ",", "."))) %>% 
  filter(height_cm < 600, width_cm < 760) %>% 
  mutate(hw_ratio = height_cm / width_cm,
         hw_cat = case_when(hw_ratio > 1 ~ "mais alto que largo",
           hw_ratio < 1 ~ "mais largo que alto",
           hw_ratio == 1 ~ "quadrado perfeito"
         )) %>% 
  ggplot(aes(x = width_cm, y = height_cm, colour = hw_cat)) +
  geom_point(alpha = .5) +
  ggtitle("Pinturas do MoMA, altas e largas") +
  scale_colour_manual(name = "",
                      values = c("gray50", "#FF9900", "#B14CF0")) +
  theme_fivethirtyeight() +
  theme(axis.title = element_text()) +
  labs(x = "Largura", y = "Altura")