Ero sivun ”Joensuun keskustan liikennemalli J1” versioiden välillä

Opasnet Suomista
Siirry navigaatioon Siirry hakuun
(→‎Kaava: koodia korjattu)
Rivi 42: Rivi 42:


<rcode>
<rcode>
# Luetaan liikennemaarat Opasnet Base-tietokannasta, muuttujasta Op_fi2681:
#
library(OpasnetBaseUtils)
library(OpasnetBaseUtils)
risteykset <- op_baseGetData("opasnet_base", "Op_fi2681", series_id = 2953)
risteykset <- op_baseGetData("opasnet_base", "Op_fi2681", series_id = 2953)
#
# Muutetaan tekstitulokset numeroiksi. Jostain syystä Länteen tallentui tekstinä.
# Muutetaan tekstitulokset numeroiksi. Jostain syystä Länteen tallentui tekstinä.
risteykset[!is.na(risteykset$Result.Text), "Result"] <- as.numeric(risteykset[!is.na(risteykset$Result.Text), "Result.Text"])
risteykset[!is.na(risteykset$Result.Text), "Result"] <- as.numeric(risteykset[!is.na(risteykset$Result.Text), "Result.Text"])
Rivi 51: Rivi 55:
colnames(risteykset) <- c("Risteys","Pohjoiseen","Itään","Etelään","Länteen")
colnames(risteykset) <- c("Risteys","Pohjoiseen","Itään","Etelään","Länteen")


# Luetaan liikennemaarat
# Eristetaan risteyspisteet omaan vektoriin:
#
# risteykset <- re#ad.table(file="~/Projects/Osallistuva_Demokratia/ERACEDU_Joensuu/risteykset.dat", sep=",")
# Eristetaan risteyspisteet omaan vektoriin÷
#
#
risteyspisteet <- risteykset[[1]]; dim(risteyspisteet)<-c(9,13)
risteyspisteet <- risteykset[[1]]; dim(risteyspisteet)<-c(9,13)
# Muodostetaan ylimaaraiset rivit ja sarakkeet lahinaapuritaulukointia varten
# Muodostetaan ylimaaraiset rivit ja sarakkeet lahinaapuritaulukointia varten
# (ita-lansi -suunnassa reunapisteiden nimena "AA" ja pohjois-etela -suunnassa "BB", nurkissa "XX"):
# (ita-lansi -suunnassa reunapisteiden nimena "AA" ja pohjois-etela -suunnassa "BB", nurkissa "XX"):
Rivi 83: Rivi 85:
# Poistetaan listasta polun koordinaattipisteet:
# Poistetaan listasta polun koordinaattipisteet:
#
#
polkuN <- list(1:length(polku)); for(i in 1:length(polku)) {polkuN[[i]] <- which(test3 == polku[[i]])}; num_polku<- as.numeric(polkuN);
polkuN <- list(1:length(polku));
# Maaritellaan apu_kampa, joka kertoo missa poistettavat polun elementit
for(i in 1:length(polku)) {polkuN[[i]] <- which(test3 == polku[[i]])}; num_polku <- as.numeric(polkuN)
# sijaitsevat lahinaapurilistassa:
 
# Maaritellaan apu_kampa, joka kertoo missa poistettavat polun elementit sijaitsevat lahinaapurilistassa:
#
#
apu_kampa<-as.numeric(lahinaapurit %in% num_polku)*(1:length(lahinaapurit));
apu_kampa<-as.numeric(lahinaapurit %in% num_polku)*(1:length(lahinaapurit));


# Maaritetaan muuttujan apu_kampa avulla lyhennetty lahinaapurilista, josta
# Maaritetaan muuttujan apu_kampa avulla lyhennetty lahinaapurilista, josta on poistettu polun elementit:
# on poistettu polun elementit:
#
#
mod_lahinaapurit <- c(1:length(lahinaapurit)); for(i in 1:length(lahinaapurit))
mod_lahinaapurit <- c(1:length(lahinaapurit));
{if(i==apu_kampa[[i]]) mod_lahinaapurit[[i]] <- 0 else mod_lahinaapurit[[i]] <- lahinaapurit[[i]]};
for(i in 1:length(lahinaapurit)) {if(i==apu_kampa[[i]]) mod_lahinaapurit[[i]] <- 0 else mod_lahinaapurit[[i]] <- lahinaapurit[[i]]};
mod_lahinaapurit <- mod_lahinaapurit[mod_lahinaapurit != 0]
mod_lahinaapurit <- mod_lahinaapurit[mod_lahinaapurit != 0]


Rivi 105: Rivi 107:
# koska jalkimmaiset on maaritetty laajemman test3-taulukon perusteella joka sisaltaa ylimaaraisia reunapisteita)
# koska jalkimmaiset on maaritetty laajemman test3-taulukon perusteella joka sisaltaa ylimaaraisia reunapisteita)
#
#
lahinaapuri_risteykset <- list(1:length(mod_lahinaapurit)); for(i in 1:length(mod_lahinaapurit))
lahinaapuri_risteykset <- list(1:length(mod_lahinaapurit)); for(i in 1:length(mod_lahinaapurit)) {lahinaapuri_risteykset[[i]] <- which(risteykset[[1]] == as.list(test3[mod_lahinaapurit])[[i]])}
{lahinaapuri_risteykset[[i]] <- which(risteykset[[1]] == as.list(test3[mod_lahinaapurit])[[i]])}


# Lasketaan painokertoimet kaikille risteyspisteille niiden liikennemaarien perusteella. Painokerroin = sarakkeen
# Lasketaan painokertoimet kaikille risteyspisteille niiden liikennemaarien perusteella. Painokerroin = sarakkeen
Rivi 128: Rivi 129:
# jokaisessa polun pisteessa):
# jokaisessa polun pisteessa):
#
#
polun_liikennemaara <- list(2:5); for(i in 2:5)
polun_liikennemaara <- list(2:5);
{polun_liikennemaara[[i]] <- sum(risteykset[as.numeric(polku_risteykset),i])};
for(i in 2:5) {polun_liikennemaara[[i]] <- sum(risteykset[as.numeric(polku_risteykset),i])};
num_polun_liikennemaara <- as.numeric(polun_liikennemaara[2:5]);
num_polun_liikennemaara <- as.numeric(polun_liikennemaara[2:5]);


Rivi 182: Rivi 183:
# summata edellisiin risteykset-muuttujan arvoihin jaettava_per_risteys jokaisessa lahinaapuriristeyksessa:
# summata edellisiin risteykset-muuttujan arvoihin jaettava_per_risteys jokaisessa lahinaapuriristeyksessa:
#
#
for(i in 1:length(lahinaapuri_risteykset))
for(i in 1:length(lahinaapuri_risteykset)) {risteykset2[as.numeric(lahinaapuri_risteykset),][i,2:5] <- risteykset[as.numeric(lahinaapuri_risteykset),][i,2:5] + jaettava_per_risteys[[i]]}
{risteykset2[as.numeric(lahinaapuri_risteykset),][i,2:5] <- risteykset[as.numeric(lahinaapuri_risteykset),][i,2:5] + jaettava_per_risteys[[i]]}


# Kokonaisliikennemaarat koko katuverkossa saadaan summaamalla suoritteet jokaisessa hilapisteessa. Linkit
# Kokonaisliikennemaarat koko katuverkossa saadaan summaamalla suoritteet jokaisessa hilapisteessa. Linkit
Rivi 194: Rivi 194:
# Verrataan sita vanhaan
# Verrataan sita vanhaan
#
#
kokonaisliikennemaara <-
kokonaisliikennemaara <- sum(sum(as.numeric(risteykset[[2]])),sum(as.numeric(risteykset[[3]])),sum(as.numeric(risteykset[[4]])),sum(as.numeric(risteykset[[5]])))
sum(sum(as.numeric(risteykset[[2]])),sum(as.numeric(risteykset[[3]])),sum(as.numeric(risteykset[[4]])),sum(as.numeric(risteykset[[5]])))


# Liikennesuoritteet sen sijaan muuttuvat. Liikennemaarat pitaa kertoa korttelidimensioilla. P-E-suunnassa
# Liikennesuoritteet sen sijaan muuttuvat. Liikennemaarat pitaa kertoa korttelidimensioilla. P-E-suunnassa
Rivi 201: Rivi 200:
# Maaritellaan ensin kokonaisliikennemaarat eri suuntiin:
# Maaritellaan ensin kokonaisliikennemaarat eri suuntiin:
#
#
kokonaisliikennemaara_suunta2 <- c(sum(as.numeric(risteykset2[[2]])),sum(as.numeric(risteykset2[[3]])),sum(as.numeric(risteykset2[[4]])),sum(as.numeric(risteykset2[[5]])))
kokonaisliikennemaara_suunta2 <- c(sum(as.numeric(risteykset2[[2]])),sum(as.numeric(risteykset2[[3]])),
sum(as.numeric(risteykset2[[4]])),sum(as.numeric(risteykset2[[5]])))
#
#
# Verrataan tata vanhaan kokonaisliikennemaara_suunta -muuttujaan
# Verrataan tata vanhaan kokonaisliikennemaara_suunta -muuttujaan
Rivi 209: Rivi 209:
# Lasketaan liikennesuorite2
# Lasketaan liikennesuorite2
#
#
liikennesuorite2 <- (kokonaisliikennemaara_suunta2[1] + kokonaisliikennemaara_suunta2[3])*135 + (kokonaisliikennemaara_suunta2[2] + kokonaisliikennemaara_suunta2[4])*100
liikennesuorite2 <- (kokonaisliikennemaara_suunta2[1] + kokonaisliikennemaara_suunta2[3])*135 + (kokonaisliikennemaara_suunta2[2] + kokonaisliikennemaara_suunta2[4])*100;
liikennesuorite2
liikennesuorite2
#
#
# Verrataan tata vanhaan liikennesuoritteeseen
# Verrataan tata vanhaan liikennesuoritteeseen
#
#
liikennesuorite <- (kokonaisliikennemaara_suunta[1] + kokonaisliikennemaara_suunta[3])*135 + (kokonaisliikennemaara_suunta[2] + kokonaisliikennemaara_suunta[4])*100
liikennesuorite <- (kokonaisliikennemaara_suunta[1] + kokonaisliikennemaara_suunta[3])*135 + (kokonaisliikennemaara_suunta[2] + kokonaisliikennemaara_suunta[4])*100;
liikennesuorite
liikennesuorite



Versio 26. syyskuuta 2011 kello 11.20




Rajaus

Liikennemalli J1 on rajusti yksinkertaistettu version Helsingin seudun joukkoliikennemallista. Malli J1 on rajattu Joensuun ydinkeskustaan 9*13-korttelin hilaan. Mallia J1 käytetään osana 29.9.2011 Joensuussa järjestettävää riskinarvioinnin ja yhteisöllisen päätöksenteon koulutustapahtumaa.

Määritelmä

Data

Mitä muutoksia haluaisit tehdä Joensuun liikennejärjestelyihin? Katso karttaa ja vastaa kysymyksiin.

Alkupisteen x-koordinaatti:

Alkuposteen y-koordinaatti:

Loppupisteen x-koordinaatti:

Loppupisteen y-koordinaatti:

Mitä haluat lisätä tälle välille?:

Voit antaa omalle suunnitelmallesi nimen, jolloin yksittäiset ehdotukset käsitellään kokonaisuutena. Suunnitelman nimi?:

+ Näytä koodi

TODO: {{#todo:Koodissa on jokin bugi, rivien lukumäärät eivät täsmää mutten osaa op_baseWritea tarpeeksi hyvin ymmärtääkseni. Tarkoituksena yksinkertaisesti appendata yksi rivi dataa käyttäjän vastauksista. Ehditkö korjata?|Teemu Rintala|Opasnet}}


Kausaliteetti

  • Ylävirtamuuttujia ei ole.

Yksikkö

Muuttujan tulokset on ilmaistu useissa yksiköissä (liikennesuorite, CO2-päästöt, pienhiukkaspäästöt, DALYt)

Kaava

+ Näytä koodi

Tulokset

Katso myös

Viitteet


Aiheeseen liittyviä tiedostoja

<mfanonymousfilelist></mfanonymousfilelist>