Ero sivun ”Ympäristöterveysindikaattori” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
Rivi 212: Rivi 212:
colnames(d_kaikki)[3:5] <- c("Ilma","Ergo","Kaikki")
colnames(d_kaikki)[3:5] <- c("Ilma","Ergo","Kaikki")
print(d_kaikki)
print(d_kaikki)
</rcode>
=== Indikaattorien lataus Sotkanettiin ===
<rcode>
library(pea)
# library(RODBC) # Tätä ei kai tarvita JDBC-yhteyksissä
library(tcltk2)
library(rvest) # For html import
######Odbc did not work
# help(peaOdbcConnect)
# con <- peaOdbcConnect("common")
# odbcGetInfo(con)
# sqlQuery(con, "select * from public.vaesto limit 5")
con <- peaJdbcConnect("common") # Tässä kohdassa kysytään käyttäjätunnus ja salasana
#View(dbGetQuery(con, "select * from pg_catalog.pg_tables where schemaname = 'sotkanet_lataus';"))
#View(dbGetQuery(con, "select distinct schemaname from pg_catalog.pg_tables;")) # Listaa skeemat
#koo <- peaGetKoodisto('d_alue_2_sote')$data # Ei tarvitakaan koska oikeat aluekoodit ovat datassa.
dat <- html_table(read_html("https://yhteistyotilat.fi/wiki08/x/SLHFAg"))[[3]] # Pienhiukkaspitoisuuden väestöpainotettu vuosikeskiarvo
dat <- data.frame(
#  ID = 1:nrow(dat), # Primary key not needed if peaJdbcWrite used.
  Vuosi = 2015,
  Alue = dat$Alue,
  Aluekoodi = dat[[2]],
  Sukupuoli = 4,
  Mittari = 678,
  Mittarin_arvo = dat[[7]],
  Paivamaara = "30.5.2018",
  stringsAsFactors = FALSE
)
dbSendQuery( # Create new table indikaattori_678.
  con,
  "CREATE TABLE sotkanet_lataus.indikaattori_678 (
    ID integer PRIMARY KEY,
    Vuosi integer,
    Alue text,
    Aluekoodi integer,
    Sukupuoli integer,
    Mittari integer,
    Mittarin_arvo double precision,
    Paivamaara text
  );
  GRANT SELECT ON TABLE sotkanet_lataus.indikaattori_678 TO public_sotkanet_reader;
  COMMENT ON TABLE sotkanet_lataus.indikaattori_678 IS 'Pienhiukkaspitoisuuden väestöpainotettu vuosikeskiarvo (ug/m3)';"
)
# Kirjoitetaan datat tauluun
dbSendQuery(
  con,
  paste(
    "INSERT INTO sotkanet_lataus.indikaattori_678 ",
    "(ID, Vuosi, Alue, Aluekoodi, Sukupuoli, Mittari, Mittarin_arvo, Paivamaara) VALUES \n",
    paste("(", dat$ID,",",dat$Vuosi, ",'",dat$Alue, "',", dat$Aluekoodi, ",",dat$Sukupuoli, ",",
          dat$Mittari,",", dat$Mittarin_arvo,",'", dat$Paivamaara,"')",sep="", collapse=",\n"),
    ";",
    sep=""
  )
)
# Yllä oleva koodi tuotti virheen
# Error in .verify.JDBC.result(r, "Unable to retrieve JDBC result set for ",  :
# Unable to retrieve JDBC result set for INSERT INTO sotkanet_lataus.indikaattori_678 (ID, Vuosi, Alue, Aluekoodi, Sukupuoli, Mittari, Mittarin_arvo, 'Paivamaara') VALUES
# (1,2015,'HE-maakunta',1,4,678,6.4,'30.5.2018'), ...
# Ehkä ongelmana oli primary keyn puute tai ääkköset Päivämääräsarakkeessa. Näillä muutoksilla kuitenkin toimi.
# Ei tarvita tätä enää koska taulu luotiin uudestaan oikein.
# dbSendQuery(con, "ALTER TABLE sotkanet_lataus.indikaattori_678 ALTER COLUMN Alue TYPE text;")
#kirjoitetaan taulu kokonaisuudessaan MUTTA EI TOIMI KOSKA MINULLA ILMEISESTI ON VANHA Pea ja peaJdbcWrite puuttuu.
peaJdbcWrite(
  con,
  dat=dat,
  tablename="indikaattori_678",
  schema="sotkanet_lataus",
  batch_size=10000,
  role="public_sotkanet_reader",
  grant="select"
)
</rcode>
</rcode>



Versio 31. toukokuuta 2018 kello 06.33




Ympäristöterveysindikaattori on elinympäristön tiettyä ominaisuutta mittaava asia, joka kertoo ympäristön terveellisyydestä ihmiselle.

Kysymys

Mitkä ovat hyödyllisiä indikaattoreita Suomen ympäristöterveystilanteen seuraamiseksi ja parantamiseksi?

Vastaus

Perustelut

Syykaavio

+ Näytä koodi

Sisäilma kouluissa

Kouluterveyskysely tuottaa jotakin tietoa myös sisäilmasta, oppimisympäristöstä yleensä ja oppilaiden raportoimista yleisistä oireista. Katso lisätietoa näistä linkeistä:


+ Näytä koodi

Indikaattorien lataus Sotkanettiin

+ Näytä koodi

Katso myös