Nowy rok akademicki tuż tuż. Warto zatem wrócić do tematów uczelnianych, w tym do tego jak finansowana jest nauka w Polsce. A więc, finansowanie nauki w Polsce odbywa się głównie z budżetu Państwa. Na stronie Ministerstwa Nauki i Szkolnictwa Wyższego można znaleźć szereg informacji na ten temat, w tym między innymi plany budżetowe oraz sprawozdania z ich realizacji.
Sami naukowcy również mają szansę pozyskiwania środków w ramach tzw. grantów. Występowanie o granty stanowi niewątpliwie miarę aktywności oraz jest zarazem znacznikiem jakości pracy naukowej. Gdzie można starać się o wspomniane granty? Takich miejsc jest sporo, przy czym do głównych instytucji publicznych zajmujących się finansowaniem nauki w Polsce należą:
- Narodowe Centrum Nauki (NCN)
- Narodowa Agencja Wymiany Akademickiej (NAWA)
- Narodowe Centrum Badań i Rozwoju (NCBR)
Narodowe Centrum Nauki przeznacza środki finansowe na badania podstawowe, podczas gdy Narodowe Centrum Badań i Rozwoju finansuje granty na badania rozwojowe i innowacyjne z szansą na ich późniejsze skomercjalizowanie. Natomiast granty Narodowej Agencji Wymiany Akademickiej to głównie możliwość rozwoju zawodowego i naukowego poprzez wymianę akademicką.
Z wymienionych instytucji Narodowe Centrum Nauki jako jedyne udostępnia wyniki konkursów w sposób dynamicznie generowanych zestawień. Zatem w oparciu o te dane spróbujemy się dowiedzieć, które z jednostek naukowych są najbardziej aktywne w pozyskiwaniu środków na badania, jakiej rzędu wielkości są to liczby, w jakiej grupie nauk pozyskuje się te środki itd. Oczywiście spróbuję także odpowiedzieć, gdzie w rankingu uczelni technicznych lokuje się Politechnika Częstochowska. Przy czym należy zaznaczyć, że uczelnie techniczne główne środki pozyskują z programów NCBiR.
Całą analizę przeprowadzę w środowisku R. Po raz pierwszy na blogu skorzystam z biblioteki httr, która zapewnia klienta HTTP do uzyskania dostępu do API metodami GET lub POST. Różnica pomiędzy nimi polega na tym, że metodą GET możemy zażądać dane z określonego zasobu, a metodą POST możemy dane do serwera przesłać celem utworzenia lub zaktualizowania zasobu. Z uwagi na to że Narodowe Centrum Nauki pozwala wygenerować proste zestawienia statystyczne dotyczące rozstrzygniętych konkursów przez formularz umieszczony na stronie wykorzystana zostanie przeze mnie metoda POST, w której zasoby, o które będę pytać zostaną zdefiniowane w postaci listy.
library(tidyverse)
library(httr)
library(XML)
library(scales)
#lista pól do metody POST
body <- list(zestawienie = "kwota", podzial = "jednostka", zakres='rok',
konkursid = '', 'panelid'= '', typid = '', rokid= '1',
wojewodztwoid= '', plecid = '', tytulid= '', rodzajejednostekid = '1', jednostkaid = '')
Zatem na początek sprawdźmy jak przedstawia się ranking jednostek według środków uzyskanych z grantów NCN na przestrzeni lat 2011-2018.
# ramka danych o grantach
grants <- data.frame()
for(i in 1:8){
body$rokid = i
query <- POST("https://www.ncn.gov.pl/statystyki/", body=body, encode="form")
r <- htmlTreeParse(content(query), useInternal = TRUE, encoding = "UTF-8")
nazwy <- xpathApply(r, '//table[@id="tabelawynik"]//th', xmlValue)
kwoty <- xpathApply(r, '//table[@id="tabelawynik"]//td', xmlValue)
tabela <- data.frame(rok = 2010+i,
nazwa = tail(unlist(nazwy), -2),
kwota = as.numeric(gsub(" ", "", head(unlist(kwoty), -2))))
grants <- rbind(grants,tabela)
}
grants_df <- grants
grants_top10 <- grants_df %>%
group_by(rok) %>%
arrange(desc(kwota)) %>%
top_n(10,kwota) %>%
mutate(pozycja=row_number()) %>%
select(nazwa,rok,pozycja)
grants_top10 %>%
ggplot(aes(x = rok, y = pozycja, group = nazwa)) +
geom_line(aes(color = nazwa), size = 1.5) +
geom_point(aes(color = nazwa), size = 2.3) +
scale_x_continuous(breaks = seq(2011,2018,by = 1)) +
scale_y_reverse(breaks = pretty_breaks(10)) +
scale_colour_manual(values=c("coral", "chocolate", "cornsilk",
"chartreuse","cadetblue","brown",
"blue","beige","azure",
"aquamarine","dimgrey","deepskyblue",
"darkviolet","orange","darkseagreen",
"darkorange","darkblue","firebrick",
"red", "steelblue", "blanchedalmond")) +
labs(x = "Rok", y = "Pozycja w rankingu") +
ggtitle("Ranking uczelni według kwoty pozyskanej z grantów NCN (Top 10)", subtitle = "(2011-2018)") +
theme(legend.title = element_blank(),
legend.position = "bottom",
legend.direction = "vertical")
Przez najlepszą dziesiątkę Top10 pod względem sumy uzyskanych kwot w ramach grantów NCN w latach 2011-2018 przewinęło się dwadzieścia jeden jednostek naukowych.
Niezaprzeczalnie w rankingu dominują cztery jednostki. Są to:
- Uniwersytet Jagielloński w Krakowie, który w 2018 r. powrócił po sześcioletniej przerwie na pozycję lidera,
- Uniwersytet Warszawski w Warszawie,
- Uniwersytet Adama Mickiewicza w Poznaniu,
- Uniwersytet Wrocławski we Wrocławiu.
Sprawdźmy zatem ile procentowo środków z grantów NCN pozyskały wymienione jednostki w stosunku do pozostałej szóstki z Top10 (dziesięć najlepszych jednostek pod względem ilości pozyskanych środków w danym roku.)
Top4 <- c("Uniwersytet Jagielloński - Kraków","Uniwersytet Warszawski","Uniwersytet Wrocławski","Uniwersytet im. A. Mickiewicza - Poznań")
grants_moneypercent <- grants_top10_kw %>%
mutate(jednostka = ifelse(nazwa %in% Top4,"t","p"),
jednostka = factor(jednostka, levels = c("t","p"), labels = c("Pierwsze cztery","Pozostałe z dziesięciu"))) %>%
group_by(rok, jednostka) %>%
mutate(suma = sum(kwota)) %>%
select(-nazwa, -kwota) %>%
unique() %>%
group_by(rok) %>%
mutate(procent = suma/sum(suma))
O ile jeszcze w roku 2011 procentowo suma kwot pozyskanych przez jednostki z pozycji 5-6 była wyższa od tych z pozycji 1-4, to począwszy od 2012 roku ilość pieniędzy trafiających do wspomnianych wcześniej czerech jednostek przekracza 60% puli zgarnianej przez pierwszą dziesiątkę jednostek. W dodatku obserwujemy coroczną tendencję do zwiększania tej kwoty. W roku 2018 do pierwszej czwórki trafiło już bowiem 67,5% kwoty, która była udziałem jednostek z pierwszej dziesiątki. Sprawdźmy jeszcze jak wygląda procentowy podział kwot pomiędzy pierwszymi dwoma jednostkami, a jednostkami z pozycji 3-4.
W ostatnim roku do Uniwersytetu Jagiellońskiego i Uniwersytetu Warszawskiego trafiło ponad 2,5 razy więcej środków z NCN niż do Uniwersytetu Adama Mickiewicza i Uniwersytetu Wrocławskiego. Postawmy jeszcze pytanie, ile procentowo pozyskują dwie pierwsze jednostki na tle wszystkich pozostałych jednostek, którym z danym roku przyznano granty.
I już możemy odpowiedzieć, kwoty jakie pozyskują od wielu lat Uniwersytet Jagielloński w Krakowie oraz Uniwersytet Warszawski w Warszawie stanowią ponad 20% wszystkich dostępnych środków grantów NCN w danym roku. W roku 2018 było to już 21,9% z 1 206 347 908 zł.
Przejdźmy teraz dalej. NCN udziela grantów w jednej z trzech podstawowych dziedzin nauki, w ramach których uporządkowano panele dyscyplin. Dziedziny te to:
- HS – Nauki Humanistyczne, Społeczne i o Sztuce
- ST – Nauki Ścisłe i Techniczne
- NZ – Nauki o Życiu
Dowiedzmy się zatem jakie środki NCN kierował na poszczególne dziedziny nauki. Formułujemy odpowiednie zapytanie do metody POST.
# kwota wniosków zakwalifikowana do finansowania w podziale na grupy nauk
body <- list(zestawienie = "kwota", podzial = "grupa", zakres='rok', rokid= '1')
W ostatnich latach zauważalny jest wzrost kwot grantów z przeznaczeniem na badania w zakresie nauk o życiu. Tym samym kwota przeznaczona na badania w tej dziedzinie w 2018 roku była po raz pierwszy wyższa od kwoty przeznaczonej na badania w dziedzinie nauk ścisłych i technicznych. Kwoty te przekraczają poziom 500 mln zł rocznie. Tendencja wzrostowa zauważalna jest także w dziedzinie nauk humanistycznych, społecznych i o sztuce, gdzie kwota grantów zbliża się do 200 mln zł.
Jakie rodzaje jednostek pozyskują największe kwoty. Sprawdźmy.
# kwota wniosków zakwalifikowana do finansowania w poszczególnych grupach rodzajów jednostek
body <- list(zestawienie = "kwota", podzial = "rodzajejednostek", zakres='rok', rokid= '1')
Największe kwoty grantów NCN przypadają na uczelnie wyższe. Dotychczasowe maksimum przypadło w 2017 r. Uczelnie wyższe pozyskały ponad 870 mln zł. Z kolei od 2015 r. kreśli się tendencja wzrostowa pozyskiwania środków z NCN przez jednostki naukowe PAN. W 2018 r. przekroczona została w ich przypadku po raz pierwszy okrągła suma 300 mln zł.
Spójrzmy jeszcze na kwoty pozyskiwane przez grantobiorców z punktu widzenia przestrzennej lokalizacji jednostek na obszarze Polski. Tutaj po pierwszej części wpisu możemy wysnuć wniosek, że intensyfikacja życia naukowego odbywa się głównie w województwie mazowieckim oraz małopolskim, ale co z pozostałymi województwami. Postaramy się na to pytanie odpowiedzieć. Na początek sformułujemy pytanie o wielkość kwoty przypadającą na poszczególne województwo.
# kwota wniosków zakwalifikowana do finansowania ze względu na województwo
body <- list(zestawienie = "kwota", podzial = "wojewodztwo", zakres='rok', rokid= '1')
Ciekawym będzie także zestawienie tych kwot na mieszkańca. Stąd też dane ilości mieszkańców województwa pobierzemy z Wikipedii.
library(rvest)
wiki <- "https://pl.wikipedia.org/wiki/Wojew%C3%B3dztwo"
webpage <- read_html(wiki)
table_links <- html_nodes(webpage, ".wikitable")
tables <- html_table(table_links, fill = TRUE)
wiki_woj <- tables[[1]] %>% select(1,2,5)
colnames(wiki_woj) <- c("TERYT","Wojewodztwo","Ludnosc")
A następnie przedstawimy w sposób graficzny.
mapki %>%
filter(rok %in% 2015:2018) %>%
ggplot() +
geom_polygon(aes(x = long,y = lat,group = group, fill = na_mieszkanca),color="grey") +
geom_text(data = srodki_woj %>% filter(rok %in% 2015:2018),
aes(x = long, y = lat, label = paste0(procent,"%")), color="red") +
scale_fill_gradientn(colours = topo.colors(5)) +
ggtitle("Kwota grantów NCN w przeliczeniu na mieszkańca województwa [PLN]",
subtitle = "w latach 2015-2018") +
theme_void() +
theme(legend.title = element_blank(),
plot.title = element_text(hjust = 0.5),
plot.subtitle = element_text(hjust = 0.5)) +
facet_wrap(~rok)
To co możemy zauważyć wprost z przedstawionego kartogramu to znaczący wzrost kwoty na badania naukowe w przeliczeniu na mieszkańca województwa. W województwie mazowieckim kwota ta w 2018r przekroczyła 80 zł, podczas gdy jeszcze cztery lata temu wynosiła niespełna 67 zł. W województwie śląskim wielkość ta wynosi 11,62 zł, a więc praktycznie ośmiokrotnie mniej niż w mazowieckim. Liczby procentowe na czerwono podane dla każdego województwa oznaczają procentowy udział kwot grantów. W 2018 r. województwo mazowieckie, a praktycznie Warszawa pozyskała blisko 36% z dostępnej puli środków w ramach grantów NCN.
Politechnika Częstochowska
Politechnika Częstochowska obchodzi w tym roku jubileusz 70-lecia. Uczelnia powstała w 1949 roku jako Szkoła Inżynierska. Dziś kształci studentów na sześciu wydziałach i jest największą techniczną szkołą wyższą w regionie częstochowskim. Spójrzmy zatem jak idzie Politechnice Częstochowskiej pozyskiwanie środków w ramach grantów NCN na tle innych uczelni technicznych.
Techniczne <- c("Akademia Górniczo - Hutnicza im. St. Staszica - Kraków",
"Politechnika Wrocławska",
"Politechnika Warszawska",
"Politechnika Łódzka",
"Politechnika Śląska - Gliwice",
"Politechnika Gdańska",
"Politechnika Poznańska",
"Politechnika Krakowska im. T. Kościuszki",
"Politechnika Częstochowska",
"Politechnika Białostocka",
"Politechnika Lubelska",
"Politechnika Rzeszowska im. I. Łukasiewicza",
"Politechnika Opolska",
"Politechnika Koszalińska",
"Politechnika Świętokrzyska - Kielce")
Sprawdźmy na początek o jakich kwotach mówimy w przypadku uczelni technicznych.
body <- list(zestawienie = "kwota", podzial = "jednostka", zakres='rodzajejednostek', rodzajejednostekid= '4')
library(knitr)
grants %>%
filter(nazwa %in% Techniczne) %>%
mutate(pozycja = row_number(),
pozycja = as.factor(pozycja),
kwota = round(kwota/10^6,1)) %>%
select(pozycja, nazwa, kwota) %>%
kable(col.names = c("Pozycja","Uczelnia techniczna","Kwota grantów [mln PLN]"),
row.names = FALSE,
align="clr",format = "html")
Pozycja | Uczelnia techniczna | Kwota grantów [mln PLN] |
---|---|---|
1 | Akademia Górniczo – Hutnicza im. St. Staszica – Kraków | 234.9 |
2 | Politechnika Wrocławska | 203.2 |
3 | Politechnika Warszawska | 182.8 |
4 | Politechnika Łódzka | 123.2 |
5 | Politechnika Śląska – Gliwice | 111.7 |
6 | Politechnika Gdańska | 102.6 |
7 | Politechnika Poznańska | 81.5 |
8 | Politechnika Krakowska im. T. Kościuszki | 25.9 |
9 | Politechnika Częstochowska | 19.8 |
10 | Politechnika Białostocka | 16.7 |
11 | Politechnika Lubelska | 15.1 |
12 | Politechnika Rzeszowska im. I. Łukasiewicza | 12.2 |
13 | Politechnika Opolska | 6.6 |
14 | Politechnika Koszalińska | 4.8 |
15 | Politechnika Świętokrzyska – Kielce | 2.4 |
W latach 2011-2018 pracownicy naukowi Politechniki Częstochowskiej pozyskali w ramach grantów NCN 19,8 mln zł, co klasyfikuje naszą uczelnię na 9 pozycji wśród wiodących uczelni technicznych. Liderem w tej grupie jest krakowska Akademia Górniczo-Hutnicza im. St. Staszica, która pozyskała w tym okresie 234,9 mln zł.
Prześledźmy jeszcze jak zmieniała się pozycja Politechniki Częstochowskiej w poszczególnych latach pod względem kwot pozyskanych z grantów Narodowego Centrum Nauki.
techniczne_rank <- grants_df %>%
filter(nazwa %in% Techniczne) %>%
group_by(rok) %>%
arrange(desc(kwota)) %>%
mutate(pozycja=row_number()) %>%
select(nazwa,rok,pozycja)
techniczne_rank %>%
mutate(pcz = ifelse(nazwa == "Politechnika Częstochowska",T,F)) %>%
ggplot(aes(x = rok, y = pozycja, group = nazwa)) +
geom_line(aes(color = pcz, alpha = pcz), size = 1.5) +
geom_point(aes(color = pcz, alpha = pcz), size = 2.2) +
geom_text(data = techniczne_rank %>% filter(rok == "2018", nazwa == "Politechnika Częstochowska"),
aes(label = nazwa), color = "#D62727",
size = 3.5, nudge_x = 1.2) +
geom_text(data = techniczne_rank %>% filter(rok == "2018", nazwa != "Politechnika Częstochowska"),
aes(label = nazwa), color = "black",
size = 3.5, nudge_x = 1.2) +
scale_x_continuous(breaks = c(seq(2011, 2018, by = 1)),
expand = expand_scale(add = c(0.3,1.1))) +
scale_y_reverse(breaks = c(1:15)) +
scale_color_manual(values = c("#0F263C", "#D62727")) +
ggtitle("Ranking uczelni technicznych - pozyskane środki w ramach grantów NCN", subtitle = "(w latach 2011-2018)") +
labs(x = "", y = "") +
theme(legend.title = element_blank(),
legend.position = "none",
axis.text = element_text(size= 11, color = "darkblue"),
axis.line = element_line(color = "darkblue",
size = 1, linetype = "solid"))
1 października – 70. Inauguracja Roku Akademickiego w Politechnice Częstochowskiej.
Z tej okazji koleżankom i kolegom z uczelni życzę powodzenia w krzewieniu postępu naukowo-technicznego. Wielu sukcesów i realizacji znacznej większości stawianych celów.