artists <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2022/2022-09-27/artists.csv')
# Breaks down each artist type into columns with values in rows below
artists_wide <- artists %>%
pivot_wider(names_from = type,
values_from = artists_n)
# Returns artist types to one column called "type" with values in a column by itself called "artists_n"
artists_wide %>%
pivot_longer(cols = c(6:18),
names_to = "type",
values_to = "artists_n",
values_drop_na = TRUE)
## # A tibble: 2,681 × 7
## state race all_workers_n artists_share location_quotient type artists_n
## <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl>
## 1 Alabama Hisp… 88165 0.000510 0.875 Arch… 45
## 2 Alaska Hisp… 26875 0.000558 0.957 Arch… 15
## 3 Arizona Hisp… 1033370 0.000261 0.448 Arch… 270
## 4 Arkansas Hisp… 101405 NA NA Land… 0
## 5 Arkansas Hisp… 101405 NA NA Acto… 0
## 6 Arkansas Hisp… 101405 NA NA Danc… 0
## 7 Californ… Hisp… 7470730 0.000518 0.888 Arch… 3870
## 8 Colorado Hisp… 594525 0.000336 0.577 Arch… 200
## 9 Connecti… Hisp… 288845 0.000519 0.891 Arch… 150
## 10 Delaware Hisp… 41365 NA NA Arch… 0
## # ℹ 2,671 more rows
# Combine the columns of all workers and all artists
artists_united <- artists %>%
unite(col = "proportion", c(artists_n, all_workers_n),
sep = "/")
# Separate a united column
artists_united %>%
separate(col = "proportion", into = c("artists_n", "all_workers_n"))
## # A tibble: 3,380 × 7
## state race type artists_n all_workers_n artists_share location_quotient
## <chr> <chr> <chr> <chr> <chr> <dbl> <dbl>
## 1 Alabama Hisp… Arch… 45 88165 0.000510 0.875
## 2 Alaska Hisp… Arch… 15 26875 0.000558 0.957
## 3 Arizona Hisp… Arch… 270 1033370 0.000261 0.448
## 4 Arkansas Hisp… Arch… NA 101405 NA NA
## 5 Californ… Hisp… Arch… 3870 7470730 0.000518 0.888
## 6 Colorado Hisp… Arch… 200 594525 0.000336 0.577
## 7 Connecti… Hisp… Arch… 150 288845 0.000519 0.891
## 8 Delaware Hisp… Arch… 0 41365 NA NA
## 9 District… Hisp… Arch… 185 44885 0.00412 7.07
## 10 Florida Hisp… Arch… 2900 2752995 0.00105 1.81
## # ℹ 3,370 more rows
# Change type column to occupation and artist values to count to drop na values in artist_n column
artists %>%
pivot_wider(names_from = type,
values_from = artists_n) %>%
pivot_longer(cols = c(6:18),
names_to = "occupation",
values_to = "count",
values_drop_na = TRUE)
## # A tibble: 2,681 × 7
## state race all_workers_n artists_share location_quotient occupation count
## <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl>
## 1 Alabama Hisp… 88165 0.000510 0.875 Architects 45
## 2 Alaska Hisp… 26875 0.000558 0.957 Architects 15
## 3 Arizona Hisp… 1033370 0.000261 0.448 Architects 270
## 4 Arkansas Hisp… 101405 NA NA Landscape… 0
## 5 Arkansas Hisp… 101405 NA NA Actors 0
## 6 Arkansas Hisp… 101405 NA NA Dancers A… 0
## 7 Califor… Hisp… 7470730 0.000518 0.888 Architects 3870
## 8 Colorado Hisp… 594525 0.000336 0.577 Architects 200
## 9 Connect… Hisp… 288845 0.000519 0.891 Architects 150
## 10 Delaware Hisp… 41365 NA NA Architects 0
## # ℹ 2,671 more rows