This research hopes to understand towns in Italy where there is a greater chance to find employment with a museum, archive, or library.
Questa ricerca spera di capire le città in Italia dove c’è una maggiore possibilità di trovare lavoro in un museo, un archivio o una biblioteca.
Data was sourced from https://www.istat.it/tavole-di-dati/statistiche-culturali-anno-2021/. Each category has its own data set. Because I am interested in exhibitions, of the six files available, this project begins with a look at museums. Data compiled within the Excel workbook I downloaded reported entities such as museums and galleries, archaeology locales, and monuments) that exist within each region of Italy.
I dati provengono da https://www.istat.it/tavole-di-dati/statistiche-culturali-anno-2021/. Ogni categoria ha il proprio set di dati. Poiché sono interessato alle mostre, dei sei file disponibili, questo progetto inizia con uno sguardo ai musei. I dati compilati all’interno della cartella di lavoro Excel che ho scaricato sono stati segnalati come musei e gallerie, luoghi archeologici e monumenti che esistono all’interno di ciascuna regione d’Italia.
The first steps involve cleaning two XLXS imports. The first is an overview of cultural dispersion throughout the regions. The second import regards the percentage of personnel types including consultants, external and internal. The subsets created will be joined on regions for analysis.
I primi passi prevedono la pulizia di due import di XLXS. Il primo è una panoramica della dispersione culturale nelle regioni. La seconda import riguarda la percentuale di tipologie di personale tra consulenti, esterni e interni. I sottoinsiemi creati verranno uniti nelle regioni per l’analisi.
It is important to note this data is dated 2021. Employment figures have likely changed. Nonetheless, analysis might answer the following questions:
È importante notare che questi dati sono datati 2021. I dati sull’occupazione sono probabilmente cambiati. Tuttavia, l’analisi potrebbe rispondere alle seguenti domande:
Which region offers more opportunity to work in one of these cultural categories? Quale regione offre maggiori opportunità di lavorare in una di queste categorie culturali?
Where would I be more able to work as a consultant? 2. Dove sarei più in grado di lavorare come consulente?
Comments within code will remain in English. I commenti all’interno del codice rimarranno in inglese.
#Libraries
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.3 ✔ readr 2.1.4
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ ggplot2 3.4.3 ✔ tibble 3.2.1
## ✔ lubridate 1.9.3 ✔ tidyr 1.3.0
## ✔ purrr 1.0.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(textdata)
library(tidyselect)
library(scales)
## Warning: package 'scales' was built under R version 4.3.2
##
## Attaching package: 'scales'
##
## The following object is masked from 'package:purrr':
##
## discard
##
## The following object is masked from 'package:readr':
##
## col_factor
The str function displays the structure of the Excel import read into R. The data that focused on museum related entities contained 25 sheets including the index, or indice delle tavole.
Initial tasks include addressing NA’s, changing classes from chr to numeric, renaming columns.
library(readxl)
X1_Musei_2021 <- read_excel("C:/Users/Public/Downloads/1_Musei-2021.xlsx",
sheet = "Tav. 1.1", na = "NA", skip = 3,
n_max = 24)
## New names:
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `Totale` -> `Totale...6`
## • `` -> `...7`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `Totale` -> `Totale...13`
X1_Musei_2021
## # A tibble: 24 × 13
## REGIONI\r\nRIPARTIZIONI…¹ Tipologia prevalente…² ...3 ...4 ...5 Totale...6
## <chr> <chr> <chr> <chr> <lgl> <dbl>
## 1 <NA> Museo, galleria e/o r… Area… Monu… NA NA
## 2 <NA> <NA> <NA> <NA> NA NA
## 3 Piemonte 287 9 56 NA 352
## 4 Valle d'Aosta - Vallée d… 28 6 12 NA 46
## 5 Lombardia 317 20 36 NA 373
## 6 Trentino-Alto Adige 160 1 22 NA 183
## 7 Bolzano/Bozen 90 - 11 NA 101
## 8 Trento 70 1 11 NA 82
## 9 Veneto 230 6 44 NA 280
## 10 Friuli-Venezia Giulia 120 6 19 NA 145
## # ℹ 14 more rows
## # ℹ abbreviated names:
## # ¹`REGIONI\r\nRIPARTIZIONI GEOGRAFICHE\r\nAMPIEZZA DEMOGRAFICA DEI COMUNI\r\nCLASSIFICAZIONE DEI COMUNI\r\nGRADO DI URBANIZZAZIONE`,
## # ²`Tipologia prevalente (a)`
## # ℹ 7 more variables: ...7 <lgl>, Titolarità <chr>, ...9 <chr>, ...10 <chr>,
## # ...11 <chr>, ...12 <lgl>, Totale...13 <dbl>
The first row contains the some of column names. The second row needs to be removed. It contains no data - all fields are NA. I will delete the second row before I address the column names.
X1_Musei_2021a <- X1_Musei_2021[-c(2), ]
str(X1_Musei_2021a)
## tibble [23 × 13] (S3: tbl_df/tbl/data.frame)
## $ REGIONI
## RIPARTIZIONI GEOGRAFICHE
## AMPIEZZA DEMOGRAFICA DEI COMUNI
## CLASSIFICAZIONE DEI COMUNI
## GRADO DI URBANIZZAZIONE: chr [1:23] NA "Piemonte" "Valle d'Aosta - Vallée d'Aoste" "Lombardia" ...
## $ Tipologia prevalente (a) : chr [1:23] "Museo, galleria e/o raccolta (b)" "287" "28" "317" ...
## $ ...3 : chr [1:23] "Area o parco archeologico" "9" "6" "20" ...
## $ ...4 : chr [1:23] "Monumento o complesso monumentale" "56" "12" "36" ...
## $ ...5 : logi [1:23] NA NA NA NA NA NA ...
## $ Totale...6 : num [1:23] NA 352 46 373 183 101 82 280 145 156 ...
## $ ...7 : logi [1:23] NA NA NA NA NA NA ...
## $ Titolarità : chr [1:23] "Pubblica" "186" "27" "227" ...
## $ ...9 : chr [1:23] "di cui Statale" "15" "-" "22" ...
## $ ...10 : chr [1:23] "di cui Ente locale" "145" "9" "183" ...
## $ ...11 : chr [1:23] "Privata" "166" "19" "146" ...
## $ ...12 : logi [1:23] NA NA NA NA NA NA ...
## $ Totale...13 : num [1:23] NA 352 46 373 183 101 82 280 145 156 ...
Using names, all the columns are renamed. Columns with no data are named NA. Those will be removed in a new subset.
names(X1_Musei_2021a)<-c("regions", "museo_galleria", "archeologico", "monumenti", "NA", "tipologia_totale","NA", "pubblica", "di_cui_Statale", "di_cui_Ente_locale", "privata","NA", "titolarita_totale")
X1_Musei_2021a
## # A tibble: 23 × 13
## regions museo_galleria archeologico monumenti `NA` tipologia_totale `NA`
## <chr> <chr> <chr> <chr> <lgl> <dbl> <lgl>
## 1 <NA> Museo, galler… Area o parc… Monument… NA NA NA
## 2 Piemonte 287 9 56 NA 352 NA
## 3 Valle d'A… 28 6 12 NA 46 NA
## 4 Lombardia 317 20 36 NA 373 NA
## 5 Trentino-… 160 1 22 NA 183 NA
## 6 Bolzano/B… 90 - 11 NA 101 NA
## 7 Trento 70 1 11 NA 82 NA
## 8 Veneto 230 6 44 NA 280 NA
## 9 Friuli-Ve… 120 6 19 NA 145 NA
## 10 Liguria 133 5 18 NA 156 NA
## # ℹ 13 more rows
## # ℹ 6 more variables: pubblica <chr>, di_cui_Statale <chr>,
## # di_cui_Ente_locale <chr>, privata <chr>, `NA` <lgl>,
## # titolarita_totale <dbl>
Because the first row contains data we used to name the columns, the following code will remove it and create a new subset.
X1_Musei_2021b <- X1_Musei_2021a[-c(1), ]
X1_Musei_2021b
## # A tibble: 22 × 13
## regions museo_galleria archeologico monumenti `NA` tipologia_totale `NA`
## <chr> <chr> <chr> <chr> <lgl> <dbl> <lgl>
## 1 Piemonte 287 9 56 NA 352 NA
## 2 Valle d'A… 28 6 12 NA 46 NA
## 3 Lombardia 317 20 36 NA 373 NA
## 4 Trentino-… 160 1 22 NA 183 NA
## 5 Bolzano/B… 90 - 11 NA 101 NA
## 6 Trento 70 1 11 NA 82 NA
## 7 Veneto 230 6 44 NA 280 NA
## 8 Friuli-Ve… 120 6 19 NA 145 NA
## 9 Liguria 133 5 18 NA 156 NA
## 10 Emilia-Ro… 348 12 64 NA 424 NA
## # ℹ 12 more rows
## # ℹ 6 more variables: pubblica <chr>, di_cui_Statale <chr>,
## # di_cui_Ente_locale <chr>, privata <chr>, `NA` <lgl>,
## # titolarita_totale <dbl>
is.na will remove the columns that show only NA in the data field. To continue a trail of work, the code will create another new subset.
X1_Musei_2021c<- X1_Musei_2021b[ , colSums(is.na(X1_Musei_2021b))==0]
X1_Musei_2021c
## # A tibble: 22 × 10
## regions museo_galleria archeologico monumenti tipologia_totale pubblica
## <chr> <chr> <chr> <chr> <dbl> <chr>
## 1 Piemonte 287 9 56 352 186
## 2 Valle d'Aost… 28 6 12 46 27
## 3 Lombardia 317 20 36 373 227
## 4 Trentino-Alt… 160 1 22 183 90
## 5 Bolzano/Bozen 90 - 11 101 41
## 6 Trento 70 1 11 82 49
## 7 Veneto 230 6 44 280 184
## 8 Friuli-Venez… 120 6 19 145 99
## 9 Liguria 133 5 18 156 101
## 10 Emilia-Romag… 348 12 64 424 261
## # ℹ 12 more rows
## # ℹ 4 more variables: di_cui_Statale <chr>, di_cui_Ente_locale <chr>,
## # privata <chr>, titolarita_totale <dbl>
The final step uses as.numeric to target
cols.num <- c("museo_galleria","archeologico", "monumenti", "pubblica", "di_cui_Statale", "di_cui_Ente_locale", "privata")
X1_Musei_2021c[cols.num] <- sapply(X1_Musei_2021c[cols.num],as.numeric)
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
sapply(X1_Musei_2021c, class)
## regions museo_galleria archeologico monumenti
## "character" "numeric" "numeric" "numeric"
## tipologia_totale pubblica di_cui_Statale di_cui_Ente_locale
## "numeric" "numeric" "numeric" "numeric"
## privata titolarita_totale
## "numeric" "numeric"
Here is the new subset ready for a little analysis. The tibble is sorted in descending order on tipologia_totale.
X1_Musei_2021c[order(-X1_Musei_2021c$tipologia_totale),]
## # A tibble: 22 × 10
## regions museo_galleria archeologico monumenti tipologia_totale pubblica
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Toscana 386 27 98 511 312
## 2 Emilia-Romag… 348 12 64 424 261
## 3 Lombardia 317 20 36 373 227
## 4 Piemonte 287 9 56 352 186
## 5 Lazio 216 34 48 298 230
## 6 Veneto 230 6 44 280 184
## 7 Sardegna 167 55 43 265 205
## 8 Marche 216 12 26 254 190
## 9 Sicilia 141 37 42 220 168
## 10 Campania 132 19 48 199 122
## # ℹ 12 more rows
## # ℹ 4 more variables: di_cui_Statale <dbl>, di_cui_Ente_locale <dbl>,
## # privata <dbl>, titolarita_totale <dbl>
The summary below serves as a guide for the plot created using ggplot in the following chunk. There is a significant delta between the regions with the most and the least. Is that due to the region’s size or location? As we can see from the plot, the numbers are skewed.The median average number of museums and galleries in Italy hovers around 172.
summary(X1_Musei_2021c[,c(5)])
## tipologia_totale
## Min. : 34.0
## 1st Qu.:108.5
## Median :172.0
## Mean :203.4
## 3rd Qu.:276.2
## Max. :511.0
The plot below also shows la Toscana offers the most while Molise is the region with the least number of cultural entities. A very quick look into why this might be such a stark difference points us to Molise’s interesting history. Emilia-Romagna, where I would like to reside, closely follows la Toscana with a considerable number of cultural entities.
ggplot(X1_Musei_2021c, aes(tipologia_totale, regions)) +
geom_point(aes(color=tipologia_totale))+
scale_color_binned()
Here we count how often we see the same number of archaeological parks
or areas. It is interesting to note the Molise has as many sites as
Trento and Trentino-Alto Adige. If we refer back to the overall numbers,
these regions exceed the number of entities Molise reported, however
Molise holds its own regarding archaeological parks or areas.
X1_Musei_2021c %>%
filter(!is.na(museo_galleria)) %>%
filter(!is.na(archeologico)) %>%
filter(!is.na(monumenti)) %>%
count(archeologico,sort = TRUE)
## # A tibble: 16 × 2
## archeologico n
## <dbl> <int>
## 1 6 3
## 2 1 2
## 3 5 2
## 4 12 2
## 5 2 1
## 6 7 1
## 7 8 1
## 8 9 1
## 9 10 1
## 10 11 1
## 11 19 1
## 12 20 1
## 13 27 1
## 14 34 1
## 15 37 1
## 16 55 1
Bolzano reports NA under the archeologico column. R removed Bolzano from the plot.
ggplot(X1_Musei_2021c, aes(archeologico, regions)) +
geom_point(aes(color=archeologico))
## Warning: Removed 1 rows containing missing values (`geom_point()`).
Below is a summary of museums and galleries. The tibble below the
summary shows counts in descending order with la Toscana and
Emilia-Romagna leading the pack in these types of cultural assets.
However, if we compare the number of archaeology entities in these
regions to those in Sardegna and Sicilia, there is a significant
decrease. Lazio, compared to other regions, shows a more equal
distribution of all cultural entities.
summary(X1_Musei_2021c$museo_galleria)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 28.0 92.0 132.5 159.0 216.0 386.0
X1_Musei_2021c[order(-X1_Musei_2021c$museo_galleria), ]
## # A tibble: 22 × 10
## regions museo_galleria archeologico monumenti tipologia_totale pubblica
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Toscana 386 27 98 511 312
## 2 Emilia-Romag… 348 12 64 424 261
## 3 Lombardia 317 20 36 373 227
## 4 Piemonte 287 9 56 352 186
## 5 Veneto 230 6 44 280 184
## 6 Marche 216 12 26 254 190
## 7 Lazio 216 34 48 298 230
## 8 Sardegna 167 55 43 265 205
## 9 Trentino-Alt… 160 1 22 183 90
## 10 Sicilia 141 37 42 220 168
## # ℹ 12 more rows
## # ℹ 4 more variables: di_cui_Statale <dbl>, di_cui_Ente_locale <dbl>,
## # privata <dbl>, titolarita_totale <dbl>
The ggplot below looks at museums and galleries.
ggplot(X1_Musei_2021c, aes(museo_galleria, regions)) +
geom_point(aes(color=museo_galleria))
The ggplot below shows counts of monuments in different regions. It is
interesting to note that Emilia-Romagna has more monuments than Lazio.
This surprised me because I thought Rome had all the monuments. However,
once again, la Toscana leads with the highest number.
ggplot(X1_Musei_2021c, aes(monumenti, regions)) +
geom_point(aes(color=monumenti))
The first worksheet is encouraging. On the surface, there are a
considerable number of museums that may offer employment. I am also
excited that Emilia-Romagna reports a significant number of them. I am
also happy I learned a little more about Molise.
The second worksheet is about employees at these entities. The steps follow the ones I took earlier.
library(readxl)
X1_Musei_2021_emp<- read_excel("C:/Users/Public/Downloads/1_Musei-2021.xlsx",
sheet = "Tav. 1.13", na = "NA", skip = 4,
n_max = 24)
## New names:
## • `` -> `...1`
## • `Non risponde/Non sa` -> `Non risponde/Non sa...2`
## • `Nessuno` -> `Nessuno...3`
## • `Soltanto 1` -> `Soltanto 1...4`
## • `Da 2 a 3 addetti` -> `Da 2 a 3 addetti...5`
## • `Da 4 a 5 addetti` -> `Da 4 a 5 addetti...6`
## • `Da 6 a 10 addetti` -> `Da 6 a 10 addetti...7`
## • `Da 10 a 15 addetti` -> `Da 10 a 15 addetti...8`
## • `Più di 15 addetti` -> `Più di 15 addetti...9`
## • `` -> `...10`
## • `Non risponde/Non sa` -> `Non risponde/Non sa...11`
## • `Nessuno` -> `Nessuno...12`
## • `Soltanto 1` -> `Soltanto 1...13`
## • `Da 2 a 3 addetti` -> `Da 2 a 3 addetti...14`
## • `Da 4 a 5 addetti` -> `Da 4 a 5 addetti...15`
## • `Da 6 a 10 addetti` -> `Da 6 a 10 addetti...16`
## • `Da 10 a 15 addetti` -> `Da 10 a 15 addetti...17`
## • `Più di 15 addetti` -> `Più di 15 addetti...18`
## • `` -> `...19`
## • `Non risponde/Non sa` -> `Non risponde/Non sa...20`
## • `Nessuno` -> `Nessuno...21`
## • `Soltanto 1` -> `Soltanto 1...22`
## • `Da 2 a 3 addetti` -> `Da 2 a 3 addetti...23`
## • `Da 4 a 5 addetti` -> `Da 4 a 5 addetti...24`
## • `Da 6 a 10 addetti` -> `Da 6 a 10 addetti...25`
## • `Da 10 a 15 addetti` -> `Da 10 a 15 addetti...26`
## • `Più di 15 addetti` -> `Più di 15 addetti...27`
## • `` -> `...28`
## • `` -> `...29`
str(X1_Musei_2021_emp)
## tibble [23 × 29] (S3: tbl_df/tbl/data.frame)
## $ ...1 : chr [1:23] NA "Piemonte" "Valle d'Aosta - Vallée d'Aoste" "Lombardia" ...
## $ Non risponde/Non sa...2 : chr [1:23] NA "4.5" "-" "3.5" ...
## $ Nessuno...3 : num [1:23] NA 41.2 30.4 25.2 33.9 35.6 31.7 28.9 37.2 37.2 ...
## $ Soltanto 1...4 : num [1:23] NA 17.6 17.4 22 21.3 24.8 17.1 22.5 17.9 16 ...
## $ Da 2 a 3 addetti...5 : num [1:23] NA 14.2 10.9 19.8 17.5 16.8 18.3 20.7 16.6 19.2 ...
## $ Da 4 a 5 addetti...6 : num [1:23] NA 5.7 28.3 10.5 9.8 9.9 9.8 3.9 10.3 8.3 ...
## $ Da 6 a 10 addetti...7 : num [1:23] NA 8.8 10.9 9.7 11.5 8.9 14.6 8.2 5.5 10.9 ...
## $ Da 10 a 15 addetti...8 : chr [1:23] NA "2.8" "-" "3.2" ...
## $ Più di 15 addetti...9 : chr [1:23] NA "5.0999999999999996" "2.2000000000000002" "6.2" ...
## $ ...10 : logi [1:23] NA NA NA NA NA NA ...
## $ Non risponde/Non sa...11: chr [1:23] NA "4.5" "-" "3.5" ...
## $ Nessuno...12 : num [1:23] NA 65.9 60.9 56.8 50.8 53.5 47.6 53.9 51 60.9 ...
## $ Soltanto 1...13 : num [1:23] NA 5.7 6.5 9.4 12 10.9 13.4 10.7 17.2 10.3 ...
## $ Da 2 a 3 addetti...14 : num [1:23] NA 8.8 10.9 10.7 12 11.9 12.2 10.4 17.2 12.2 ...
## $ Da 4 a 5 addetti...15 : chr [1:23] NA "4.5" "13" "7.5" ...
## $ Da 6 a 10 addetti...16 : chr [1:23] NA "7.4" "4.3" "7" ...
## $ Da 10 a 15 addetti...17 : chr [1:23] NA "1.1000000000000001" "4.3" "2.4" ...
## $ Più di 15 addetti...18 : chr [1:23] NA "2" "-" "2.7" ...
## $ ...19 : logi [1:23] NA NA NA NA NA NA ...
## $ Non risponde/Non sa...20: chr [1:23] NA "4.5" "-" "3.5" ...
## $ Nessuno...21 : chr [1:23] NA "57.1" "65.2" "51.5" ...
## $ Soltanto 1...22 : chr [1:23] NA "15.6" "19.600000000000001" "18.5" ...
## $ Da 2 a 3 addetti...23 : chr [1:23] NA "10.8" "13" "12.1" ...
## $ Da 4 a 5 addetti...24 : chr [1:23] NA "4.8" "2.2000000000000002" "6.7" ...
## $ Da 6 a 10 addetti...25 : chr [1:23] NA "5.0999999999999996" "-" "6.7" ...
## $ Da 10 a 15 addetti...26 : chr [1:23] NA "0.6" "-" "0.8" ...
## $ Più di 15 addetti...27 : chr [1:23] NA "1.4" "-" "0.3" ...
## $ ...28 : logi [1:23] NA NA NA NA NA NA ...
## $ ...29 : num [1:23] NA 100 100 100 100 100 100 100 100 100 ...
names(X1_Musei_2021_emp)<-c("regions","Personale_interno_Non_risponde_o_Non_sa", "Personale_interno_Nessuno", "Personale_interno_Soltanto_1", "Personale_interno_Da_2_a_3_addetti", "Personale_interno_Da_4_a_5_addetti", "Personale_interno_Da_6_a_10_addetti","Personale_interno_Da_10_a_15_addetti","Personale_interno_Più_di_15_addetti","Personale_interno_NA", "Personale_esterno_Non_risponde_o_Non_sa", "Personale_esterno_Nessuno", "Personale_esterno_Soltanto_1","Personale_esterno_Da_2_a_3_addetti", "Personale_esterno_Da_4_a_5_addetti", "Personale_esterno_Da_6_a_10_addetti","Personale_esterno_Da_10_a_15_addetti","Personale_esterno_Più_di_15_addetti", "Personale_esterno_NA","consulenti_Non_risponde_o_Non_sa","consulenti_Nessuno","consulenti_Soltanto_1","consulenti_Da_2_a_3_addetti", "consulenti_Da_4_a_5_addetti","consulenti_Da_6_a_10_addetti","consulenti_Da_10_a_15_addetti","consulenti_Più_di_15_addetti","Consulenti_NA","Totale%")
X1_Musei_2021_emp
## # A tibble: 23 × 29
## regions Personale_interno_No…¹ Personale_interno_Ne…² Personale_interno_So…³
## <chr> <chr> <dbl> <dbl>
## 1 <NA> <NA> NA NA
## 2 Piemonte 4.5 41.2 17.6
## 3 Valle d… - 30.4 17.4
## 4 Lombard… 3.5 25.2 22
## 5 Trentin… 0.5 33.9 21.3
## 6 Bolzano… 1 35.6 24.8
## 7 Trento - 31.7 17.1
## 8 Veneto 7.9 28.9 22.5
## 9 Friuli-… 3.4 37.2 17.9
## 10 Liguria 3.2 37.2 16
## # ℹ 13 more rows
## # ℹ abbreviated names: ¹Personale_interno_Non_risponde_o_Non_sa,
## # ²Personale_interno_Nessuno, ³Personale_interno_Soltanto_1
## # ℹ 25 more variables: Personale_interno_Da_2_a_3_addetti <dbl>,
## # Personale_interno_Da_4_a_5_addetti <dbl>,
## # Personale_interno_Da_6_a_10_addetti <dbl>,
## # Personale_interno_Da_10_a_15_addetti <chr>, …
X1_Musei_2021_emp1 <- X1_Musei_2021_emp[-c(1), ]
X1_Musei_2021_emp1
## # A tibble: 22 × 29
## regions Personale_interno_No…¹ Personale_interno_Ne…² Personale_interno_So…³
## <chr> <chr> <dbl> <dbl>
## 1 Piemonte 4.5 41.2 17.6
## 2 Valle d… - 30.4 17.4
## 3 Lombard… 3.5 25.2 22
## 4 Trentin… 0.5 33.9 21.3
## 5 Bolzano… 1 35.6 24.8
## 6 Trento - 31.7 17.1
## 7 Veneto 7.9 28.9 22.5
## 8 Friuli-… 3.4 37.2 17.9
## 9 Liguria 3.2 37.2 16
## 10 Emilia-… 4.5 23.1 22.2
## # ℹ 12 more rows
## # ℹ abbreviated names: ¹Personale_interno_Non_risponde_o_Non_sa,
## # ²Personale_interno_Nessuno, ³Personale_interno_Soltanto_1
## # ℹ 25 more variables: Personale_interno_Da_2_a_3_addetti <dbl>,
## # Personale_interno_Da_4_a_5_addetti <dbl>,
## # Personale_interno_Da_6_a_10_addetti <dbl>,
## # Personale_interno_Da_10_a_15_addetti <chr>, …
cols.num <- c("Personale_interno_Non_risponde_o_Non_sa", "Personale_interno_Nessuno", "Personale_interno_Soltanto_1", "Personale_interno_Da_2_a_3_addetti", "Personale_interno_Da_4_a_5_addetti", "Personale_interno_Da_6_a_10_addetti","Personale_interno_Da_10_a_15_addetti","Personale_interno_Più_di_15_addetti","Personale_interno_NA", "Personale_esterno_Non_risponde_o_Non_sa", "Personale_esterno_Nessuno", "Personale_esterno_Soltanto_1","Personale_esterno_Da_2_a_3_addetti", "Personale_esterno_Da_4_a_5_addetti", "Personale_esterno_Da_6_a_10_addetti","Personale_esterno_Da_10_a_15_addetti","Personale_esterno_Più_di_15_addetti", "Personale_esterno_NA","consulenti_Non_risponde_o_Non_sa","consulenti_Nessuno","consulenti_Soltanto_1","consulenti_Da_2_a_3_addetti", "consulenti_Da_4_a_5_addetti","consulenti_Da_6_a_10_addetti","consulenti_Da_10_a_15_addetti","consulenti_Più_di_15_addetti","Consulenti_NA","Totale%")
X1_Musei_2021_emp1[cols.num] <- sapply(X1_Musei_2021_emp1[cols.num],as.numeric)
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
## Warning in lapply(X = X, FUN = FUN, ...): NAs introduced by coercion
sapply(X1_Musei_2021_emp1, class)
## regions Personale_interno_Non_risponde_o_Non_sa
## "character" "numeric"
## Personale_interno_Nessuno Personale_interno_Soltanto_1
## "numeric" "numeric"
## Personale_interno_Da_2_a_3_addetti Personale_interno_Da_4_a_5_addetti
## "numeric" "numeric"
## Personale_interno_Da_6_a_10_addetti Personale_interno_Da_10_a_15_addetti
## "numeric" "numeric"
## Personale_interno_Più_di_15_addetti Personale_interno_NA
## "numeric" "numeric"
## Personale_esterno_Non_risponde_o_Non_sa Personale_esterno_Nessuno
## "numeric" "numeric"
## Personale_esterno_Soltanto_1 Personale_esterno_Da_2_a_3_addetti
## "numeric" "numeric"
## Personale_esterno_Da_4_a_5_addetti Personale_esterno_Da_6_a_10_addetti
## "numeric" "numeric"
## Personale_esterno_Da_10_a_15_addetti Personale_esterno_Più_di_15_addetti
## "numeric" "numeric"
## Personale_esterno_NA consulenti_Non_risponde_o_Non_sa
## "numeric" "numeric"
## consulenti_Nessuno consulenti_Soltanto_1
## "numeric" "numeric"
## consulenti_Da_2_a_3_addetti consulenti_Da_4_a_5_addetti
## "numeric" "numeric"
## consulenti_Da_6_a_10_addetti consulenti_Da_10_a_15_addetti
## "numeric" "numeric"
## consulenti_Più_di_15_addetti Consulenti_NA
## "numeric" "numeric"
## Totale%
## "numeric"
The summary looks at all the columns. I am curious about the columns that say nessuno but in the next chunk I opted to focus upon the percentage of different types of teams comprised of 2 to 3 people.
summary(X1_Musei_2021_emp1)
## regions Personale_interno_Non_risponde_o_Non_sa
## Length:22 Min. : 0.500
## Class :character 1st Qu.: 3.475
## Mode :character Median : 7.800
## Mean : 8.055
## 3rd Qu.:10.300
## Max. :20.600
## NA's :2
## Personale_interno_Nessuno Personale_interno_Soltanto_1
## Min. : 7.10 Min. : 7.90
## 1st Qu.:19.23 1st Qu.:15.70
## Median :27.05 Median :17.95
## Mean :26.52 Mean :18.00
## 3rd Qu.:33.52 3rd Qu.:21.30
## Max. :41.20 Max. :25.50
##
## Personale_interno_Da_2_a_3_addetti Personale_interno_Da_4_a_5_addetti
## Min. :10.90 Min. : 3.90
## 1st Qu.:16.98 1st Qu.: 7.70
## Median :18.90 Median : 9.85
## Mean :19.25 Mean :10.40
## 3rd Qu.:21.00 3rd Qu.:10.72
## Max. :35.10 Max. :28.30
##
## Personale_interno_Da_6_a_10_addetti Personale_interno_Da_10_a_15_addetti
## Min. : 2.900 Min. : 0.800
## 1st Qu.: 7.375 1st Qu.: 1.500
## Median : 9.800 Median : 2.800
## Mean : 9.750 Mean : 3.847
## 3rd Qu.:11.100 3rd Qu.: 4.400
## Max. :21.100 Max. :21.400
## NA's :3
## Personale_interno_Più_di_15_addetti Personale_interno_NA
## Min. : 0.600 Min. : NA
## 1st Qu.: 3.000 1st Qu.: NA
## Median : 4.400 Median : NA
## Mean : 5.686 Mean :NaN
## 3rd Qu.: 6.200 3rd Qu.: NA
## Max. :17.300 Max. : NA
## NA's :1 NA's :22
## Personale_esterno_Non_risponde_o_Non_sa Personale_esterno_Nessuno
## Min. : 0.500 Min. :47.30
## 1st Qu.: 3.475 1st Qu.:50.85
## Median : 7.800 Median :56.10
## Mean : 8.120 Mean :56.57
## 3rd Qu.:10.300 3rd Qu.:60.52
## Max. :20.600 Max. :71.60
## NA's :2
## Personale_esterno_Soltanto_1 Personale_esterno_Da_2_a_3_addetti
## Min. : 3.80 Min. : 5.20
## 1st Qu.: 7.70 1st Qu.: 9.50
## Median : 9.45 Median :11.95
## Mean : 9.50 Mean :11.94
## 3rd Qu.:10.85 3rd Qu.:14.38
## Max. :17.20 Max. :17.40
##
## Personale_esterno_Da_4_a_5_addetti Personale_esterno_Da_6_a_10_addetti
## Min. : 1.500 Min. :1.200
## 1st Qu.: 4.725 1st Qu.:2.800
## Median : 6.650 Median :4.500
## Mean : 6.585 Mean :4.843
## 3rd Qu.: 7.650 3rd Qu.:7.100
## Max. :13.000 Max. :9.900
## NA's :2 NA's :1
## Personale_esterno_Da_10_a_15_addetti Personale_esterno_Più_di_15_addetti
## Min. :0.700 Min. :0.800
## 1st Qu.:1.175 1st Qu.:1.875
## Median :1.800 Median :2.600
## Mean :2.200 Mean :2.744
## 3rd Qu.:2.675 3rd Qu.:3.050
## Max. :5.600 Max. :7.300
## NA's :2 NA's :6
## Personale_esterno_NA consulenti_Non_risponde_o_Non_sa consulenti_Nessuno
## Min. : NA Min. : 3.10 Min. :29.50
## 1st Qu.: NA 1st Qu.: 4.40 1st Qu.:57.40
## Median : NA Median : 8.30 Median :63.40
## Mean :NaN Mean : 15.80 Mean :61.85
## 3rd Qu.: NA 3rd Qu.: 15.12 3rd Qu.:69.90
## Max. : NA Max. :100.00 Max. :76.50
## NA's :22 NA's :2 NA's :1
## consulenti_Soltanto_1 consulenti_Da_2_a_3_addetti consulenti_Da_4_a_5_addetti
## Min. : 3.800 Min. : 2.90 Min. :1.400
## 1st Qu.: 8.875 1st Qu.: 7.10 1st Qu.:2.600
## Median :12.900 Median : 8.30 Median :3.300
## Mean :12.290 Mean : 9.31 Mean :3.655
## 3rd Qu.:15.650 3rd Qu.:11.70 3rd Qu.:4.725
## Max. :19.600 Max. :21.40 Max. :7.100
## NA's :2 NA's :1 NA's :2
## consulenti_Da_6_a_10_addetti consulenti_Da_10_a_15_addetti
## Min. :0.800 Min. :0.2
## 1st Qu.:1.450 1st Qu.:0.6
## Median :2.400 Median :0.7
## Mean :2.516 Mean :0.8
## 3rd Qu.:2.750 3rd Qu.:1.0
## Max. :6.700 Max. :1.5
## NA's :3 NA's :13
## consulenti_Più_di_15_addetti Consulenti_NA Totale%
## Min. :0.200 Min. : NA Min. :100
## 1st Qu.:0.500 1st Qu.: NA 1st Qu.:100
## Median :1.200 Median : NA Median :100
## Mean :1.391 Mean :NaN Mean :100
## 3rd Qu.:1.700 3rd Qu.: NA 3rd Qu.:100
## Max. :4.900 Max. : NA Max. :100
## NA's :11 NA's :22
summary(X1_Musei_2021_emp1[c('consulenti_Da_2_a_3_addetti', 'Personale_interno_Da_2_a_3_addetti', 'Personale_esterno_Da_2_a_3_addetti')])
## consulenti_Da_2_a_3_addetti Personale_interno_Da_2_a_3_addetti
## Min. : 2.90 Min. :10.90
## 1st Qu.: 7.10 1st Qu.:16.98
## Median : 8.30 Median :18.90
## Mean : 9.31 Mean :19.25
## 3rd Qu.:11.70 3rd Qu.:21.00
## Max. :21.40 Max. :35.10
## NA's :1
## Personale_esterno_Da_2_a_3_addetti
## Min. : 5.20
## 1st Qu.: 9.50
## Median :11.95
## Mean :11.94
## 3rd Qu.:14.38
## Max. :17.40
##
Below we have a tibble showing regions with these specific employee types. I will join this subset to the first subset I created.
# Returns only records where a joining field finds a match in both tables.
joined_data <- inner_join(X1_Musei_2021_emp1, X1_Musei_2021c, by = "regions", "museo_galleria")
print(joined_data)
## # A tibble: 22 × 38
## regions Personale_interno_No…¹ Personale_interno_Ne…² Personale_interno_So…³
## <chr> <dbl> <dbl> <dbl>
## 1 Piemonte 4.5 41.2 17.6
## 2 Valle d… NA 30.4 17.4
## 3 Lombard… 3.5 25.2 22
## 4 Trentin… 0.5 33.9 21.3
## 5 Bolzano… 1 35.6 24.8
## 6 Trento NA 31.7 17.1
## 7 Veneto 7.9 28.9 22.5
## 8 Friuli-… 3.4 37.2 17.9
## 9 Liguria 3.2 37.2 16
## 10 Emilia-… 4.5 23.1 22.2
## # ℹ 12 more rows
## # ℹ abbreviated names: ¹Personale_interno_Non_risponde_o_Non_sa,
## # ²Personale_interno_Nessuno, ³Personale_interno_Soltanto_1
## # ℹ 34 more variables: Personale_interno_Da_2_a_3_addetti <dbl>,
## # Personale_interno_Da_4_a_5_addetti <dbl>,
## # Personale_interno_Da_6_a_10_addetti <dbl>,
## # Personale_interno_Da_10_a_15_addetti <dbl>, …
X1_Musei_2021_emp1a <-joined_data %>% select(regions, museo_galleria, consulenti_Da_2_a_3_addetti, Personale_interno_Da_2_a_3_addetti, Personale_esterno_Da_2_a_3_addetti)
X1_Musei_2021_emp1a
## # A tibble: 22 × 5
## regions museo_galleria consulenti_Da_2_a_3_…¹ Personale_interno_Da…²
## <chr> <dbl> <dbl> <dbl>
## 1 Piemonte 287 10.8 14.2
## 2 Valle d'Aosta -… 28 13 10.9
## 3 Lombardia 317 12.1 19.8
## 4 Trentino-Alto A… 160 5.5 17.5
## 5 Bolzano/Bozen 90 NA 16.8
## 6 Trento 70 12.2 18.3
## 7 Veneto 230 7.1 20.7
## 8 Friuli-Venezia … 120 16.6 16.6
## 9 Liguria 133 5.1 19.2
## 10 Emilia-Romagna 348 9.4 20.3
## # ℹ 12 more rows
## # ℹ abbreviated names: ¹consulenti_Da_2_a_3_addetti,
## # ²Personale_interno_Da_2_a_3_addetti
## # ℹ 1 more variable: Personale_esterno_Da_2_a_3_addetti <dbl>
X1_Musei_2021_emp1a[order(-X1_Musei_2021_emp1a$museo_galleria),]
## # A tibble: 22 × 5
## regions museo_galleria consulenti_Da_2_a_3_…¹ Personale_interno_Da…²
## <chr> <dbl> <dbl> <dbl>
## 1 Toscana 386 11.7 26.8
## 2 Emilia-Romagna 348 9.4 20.3
## 3 Lombardia 317 12.1 19.8
## 4 Piemonte 287 10.8 14.2
## 5 Veneto 230 7.1 20.7
## 6 Marche 216 8.3 12.2
## 7 Lazio 216 9.1 17.8
## 8 Sardegna 167 5.7 21.9
## 9 Trentino-Alto A… 160 5.5 17.5
## 10 Sicilia 141 3.6 18.6
## # ℹ 12 more rows
## # ℹ abbreviated names: ¹consulenti_Da_2_a_3_addetti,
## # ²Personale_interno_Da_2_a_3_addetti
## # ℹ 1 more variable: Personale_esterno_Da_2_a_3_addetti <dbl>
Ordering the joined data offers significant insight about the type of employees working with museums. The highest percentage of consultant teams consisting of 2 or 3 people is found in the region of La Basilicata. However, la Basilacata reports number just slightly higher than Molise and Valle d’Aosta - Vallée d’Aoste who both report 28 museums and galleries.
La Toscana remains a strong path to working externally on a team of 2 or 3. But, it might be worthwhile to investigate Calabria if I wish to work internally. I am not clear about the distinctions but the data does not exclude possibility.
Personale_esterno_Da_2_a_3_addetti - highest % is la Toscana 26.8% (386 museums) consulenti_Da_2_a_3_addetti - highest is la Basilicata 21.4% (32 museums) Personale_interno_Da_2_a_3_addetti - highest is Calabria 35.1% ( 109 museums)
X1_Musei_2021_emp1a[order(-X1_Musei_2021_emp1$Personale_esterno_Da_2_a_3_addetti),]
## # A tibble: 22 × 5
## regions museo_galleria consulenti_Da_2_a_3_…¹ Personale_interno_Da…²
## <chr> <dbl> <dbl> <dbl>
## 1 Toscana 386 11.7 26.8
## 2 Friuli-Venezia … 120 16.6 16.6
## 3 Puglia 98 8.4 17.6
## 4 Umbria 121 8.1 23
## 5 Lazio 216 9.1 17.8
## 6 Molise 28 2.9 20.6
## 7 Marche 216 8.3 12.2
## 8 Emilia-Romagna 348 9.4 20.3
## 9 Trento 70 12.2 18.3
## 10 Liguria 133 5.1 19.2
## # ℹ 12 more rows
## # ℹ abbreviated names: ¹consulenti_Da_2_a_3_addetti,
## # ²Personale_interno_Da_2_a_3_addetti
## # ℹ 1 more variable: Personale_esterno_Da_2_a_3_addetti <dbl>
When I add Emilia-Romagna to the list to compare, a position as a consultant seems less likely. It is also more likely to work with an internal or external team in la Toscana.
X1_Musei_2021_emp1b <-X1_Musei_2021_emp1a %>%
filter(regions == "Toscana" | regions == "Emilia-Romagna"| regions == "Friuli-Venezia Giulia" | regions == "Calabria"| regions == "Basilicata")
X1_Musei_2021_emp1b
## # A tibble: 5 × 5
## regions museo_galleria consulenti_Da_2_a_3_…¹ Personale_interno_Da…²
## <chr> <dbl> <dbl> <dbl>
## 1 Friuli-Venezia G… 120 16.6 16.6
## 2 Emilia-Romagna 348 9.4 20.3
## 3 Toscana 386 11.7 26.8
## 4 Basilicata 32 21.4 11.9
## 5 Calabria 109 8.2 35.1
## # ℹ abbreviated names: ¹consulenti_Da_2_a_3_addetti,
## # ²Personale_interno_Da_2_a_3_addetti
## # ℹ 1 more variable: Personale_esterno_Da_2_a_3_addetti <dbl>
In conclusion, the data supplied does provide some insight about the possibility of working in Italy as a consultant for a museum or gallery. It is more likely that I can find an internal position. The data does not dissuade me from Emilia-Romagna if I wish to work with an internal team.
In conclusione, i dati forniti forniscono alcune indicazioni sulla possibilità di lavorare in Italia come consulente per un museo o una galleria. È più probabile che riesca a trovare una posizione interna. I dati non mi dissuadono dall’Emilia-Romagna se desidero lavorare con un team interno.