Skip to contents

Funksjonen dynarev_uttrekk henter inn data fra Dynarev til R så lenge man oppgir delregisternummer og skjemanavn. Det er kun enheter som er satt som aktive (AKTIV = 1) som blir lastet ned. Det er mulig å hente skjemadata (variablene i selve skjemaet) og SFU-data (enhetsinformasjon). Man kan også gjennomføre dublettsjekker og velge mellom reviderte data og rådata.

Funksjonen finnes i pakken fellesr og er installert i RStudio (Windows og Linux) og Jupyterlab i produksjonssonen.

Parametre

dynarev_uttrekk(
  delregnr,
  skjema = T,
  enhets_type = c("FRTK", "BEDR"),
  skjema_cols = T,
  sfu_cols = F,
  skjema_sfu_merge = F,
  dublettsjekk = F,
  con_ask = T,
  raadata = F
)

delregnr : Numerisk vektor med delregisternummer.
skjema : Boolsk/karaktervektor med skjemanavn. Hvis TRUE returneres alle skjema i valgt delregister.
enhets_type : Karaktervektor med enhetstype (f.eks. BEDR og/eller FRTK).
skjema_cols : Boolsk/karaktervektor. Hvis TRUE henter man alle variabler fra skjema. Hvis FALSE henter man ikke skjemadata, kun SFU-data (hvis sfu_cols = TRUE). Det er også mulig å lage en vektor/liste av variabelnavn, f.eks. c(“variabel1”, “variabel2”), dersom man kun vil ha utvalgte variabler fra skjema.
sfu_cols : Boolsk/karaktervektor. Hvis TRUE blir alle variabler fra SFU for valgt delregister og skjema inkludert. For å kun velge én eller flere variabler fra SFU skrives disse i en vektor/liste, f.eks. c(“variabel1”, “variabel2”).
skjema_sfu_merge : Boolsk. Hvis TRUE blir skjemadataene og SFU-dataene merget. Dersom FALSE blir dataene hentet som to separate datasett i en liste; [1] skjemadata og [2] SFU-data.
dublettsjekk : Boolsk/karaktervektor. Hvis TRUE sjekkes det for dubletter i skjemadata etter ENHETS_ID. Dersom man ønsker å sjekke for dubletter etter én eller flere selvvalgte variabler skrives disse i en vektor, f.eks. c(“variabel1”, “variabel2”). Liste med to datasett returneres; [1] skjemadata og [2] dublettdata (dersom det finnes dubletter, hvis ikke er denne blank).
con_ask : Boolsk/karaktervektor. Hvis TRUE får man opp en boks som spør etter Oracle-passord. Hvis FALSE spørres det ikke om passord. Ved å skrive dynarev_uttrekk(con_ask = "con") får man opp en boks som spør etter Oracle-passord og kun koblingen mot Oracle blir returnert (ikke data). Denne kan brukes dersom man skal lese inn flere skjema etter hverandre for å unngå å skrive inn passordet flere ganger.
raadata : Boolsk. Hvis FALSE returneres reviderte data (fra FELT_VERDI), TRUE returnerer rådata.

Eksempler

Under følger en rekke eksempler på hvordan man bruker funksjonen dynarev_uttrekk.

Alle kolonner fra valgt skjema

Her får man lastet inn alle kolonnene fra valgt skjema.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = T)

Utvalgte kolonner fra valgt skjema

Her får man lastet ned utvalgte kolonner fra valgt skjema. Her er kolonnene AARGANG, FORETAKETS_NAVN og FORETAKETS_ORGNR valgt.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = c("AARGANG", "FORETAKETS_NAVN", "FORETAKETS_ORGNR"))

Alle SFU-kolonner fra valgt skjema

Her får man lastet ned alle kolonnene med SFU-data fra valgt skjema.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = F,
                           sfu_cols = T)

Utvalgte SFU-kolonner fra valgt skjema

Her får man lastet ned utvalgte kolonner med SFU-data fra valgt skjema. Her er kolonnene NAVN og ORGNR valgt.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = F,
                           sfu_cols = c("NAVN", "ORGNR"))

Alle SFU-kolonner fra alle skjemaer

Her får man lastet ned alle kolonnene med SFU-data fra alle skjema i valgt delregister. Dersom man kun ønsker utvalgte variabler fra SFU-data erstattes sfu_cols = T med sfu_cols = c("variabel1", "variabel2").

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = T,
                           skjema_cols = F,
                           sfu_cols = T)

Alle kolonner fra valgt skjema og alle SFU-kolonner

Her får man lastet ned både skjemadata (alle kolonner) og SFU-data (alle kolonner) fra valgt delregister. Objektet dynarev inneholder her altså to datasett. For å få hentet ut skjemadata skriver man dynarev_skjema <- data.frame(dynarev[1]) og for å hente ut SFU-data skriver man dynarev_sfu <- data.frame(dynarev[2]).

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = T,
                           sfu_cols = T)

dynarev_skjema <- data.frame(dynarev[1])
dynarev_sfu <- data.frame(dynarev[2])

Alle kolonner fra valgt skjema og utvalgte SFU-kolonner

Her får man lastet ned både skjemadata (alle kolonner) og SFU-data (utvalgte kolonner, her NAVN og ORGNR) fra valgt delregister. Objektet dynarev inneholder her altså to datasett. For å få hentet ut skjemadata skriver man dynarev_skjema <- data.frame(dynarev[1]) og for å hente ut SFU-data skriver man dynarev_sfu <- data.frame(dynarev[2]).

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = T,
                           sfu_cols = c("NAVN", "ORGNR"))

dynarev_skjema <- data.frame(dynarev[1])
dynarev_sfu <- data.frame(dynarev[2])

Utvalgte kolonner fra valgt skjema og utvalgte SFU-kolonner

Her får man lastet ned både skjemadata (utvalgte kolonner, her AARGANG, FORETAKETS_NAVN og FORETAKETS_ORGNR) og SFU-data (utvalgte kolonner, her NAVN og ORGNR) fra valgt delregister. Objektet dynarev inneholder her altså to datasett. For å få hentet ut skjemadata skriver man dynarev_skjema <- data.frame(dynarev[1]) og for å hente ut SFU-data skriver man dynarev_sfu <- data.frame(dynarev[2]).

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = c("AARGANG", "FORETAKETS_NAVN", "FORETAKETS_ORGNR"),
                           sfu_cols = c("NAVN", "ORGNR"))

dynarev_skjema <- data.frame(dynarev[1])
dynarev_sfu <- data.frame(dynarev[2])

Alle kolonner fra valgt skjema og alle SFU-kolonner (koblet sammen)

Her får man lastet ned både skjemadata (alle kolonner) og SFU-data (alle kolonner) fra valgt delregister. SFU-dataene blir koblet på skjemadataene slik at man kun får én fil.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = T,
                           sfu_cols = T,
                           skjema_sfu_merge = T)

Alle kolonner fra valgt skjema og utvalgte SFU-kolonner (koblet sammen)

Her får man lastet ned både skjemadata (alle kolonner) og SFU-data (utvalgte kolonner, her NAVN og ORGNR) fra valgt delregister. SFU-dataene blir koblet på skjemadataene slik at man kun får én fil.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE41",
                           skjema_cols = T,
                           sfu_cols = c("NAVN", "ORGNR"),
                           skjema_sfu_merge = T)

Utvalgte kolonner fra valgt skjema og utvalgte SFU-kolonner (koblet sammen)

Her får man lastet ned både skjemadata (utvalgte kolonner, her AARGANG, FORETAKETS_NAVN og FORETAKETS_ORGNR) og SFU-data (utvalgte kolonner, her NAVN og ORGNR) fra valgt delregister. SFU-dataene blir koblet på skjemadataene slik at man kun får én fil.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                                    skjema = "HELSE41",
                                    skjema_cols = c("AARGANG", "FORETAKETS_NAVN", "FORETAKETS_ORGNR"),
                                    sfu_cols = c("NAVN", "ORGNR"),
                                    skjema_sfu_merge = T)

Dublettsjekk etter ENHETS_ID

Her får man testet for dubletter (etter ENHETS_ID) i skjemadata. Liste med to datasett returneres; [1] skjemadata og [2] dublettdata (dersom det finnes dubletter, hvis ikke er denne blank).

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE39",
                           dublettsjekk = T)

dynarev_skjema <- data.frame(dynarev[1])
dynarev_dubletter <- data.frame(dynarev[2])

Dublettsjekk etter egenvalgte variabler

Dersom man ønsker å sjekke for dubletter etter én eller flere selvvalgte variabler skrives disse i en vektor, f.eks. dublettsjekk = c("variabel1", "variabel2").

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = "HELSE0X",
                           dublettsjekk = c("FORETAKSNR", "ART_SEKTOR", "FUNKSJON_KAPITTEL"))

dynarev_skjema <- data.frame(dynarev[1])
dynarev_dubletter <- data.frame(dynarev[2])

Laste inn flere skjema uten å skive passord

For å slippe å oppgi passord flere ganger når man skal laste inn flere skjema kan man skrive con_ask = FALSE. For at dette skal fungere må man logge på først øverst i scriptet: con <- dynarev_uttrekk(con_ask = "con")

con <- dynarev_uttrekk(con_ask = "con")

dynarev_1 <- dynarev_uttrekk(delregnr = 2421,
                             skjema = "HELSE41",
                             skjema_cols = T,
                             con_ask = F)

dynarev_2 <- dynarev_uttrekk(delregnr = 2421,
                             skjema = "HELSE46P",
                             skjema_cols = T,
                             con_ask = F)

dynarev_3 <- dynarev_uttrekk(delregnr = 2421,
                             skjema = "HELSE39",
                             skjema_cols = T,
                             con_ask = F)

Laste inn flere skjema fra samme delreg i samme fil

For å laste inn data fra flere skjemaer i samme fil skriver man skjemanavnene i en karaktervektor i argumentet skjema. Her er skjemaene HELSE38P, HELSE39 og HELSE44P valgt.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = c("HELSE38P", "HELSE39", "HELSE44P"),
                           skjema_cols = c("FORETAKETS_NAVN", "FORETAKETS_ORGNR", "HELSEREGION_EPOST", "HELSEREGION_NAVN"))

Laste inn alle skjema fra delreg i samme fil

For å laste inn alle skjema fra samme delregister i samme fil skriver man skjema = T. Under enhets_type må man samtidig skrive inn alle enhetstypene som finnes i det valgte delregisteret (f.eks. BEDR og FRTK).

OBS: dette uttrekket kan føre til en veldig stor fil med mange rader og kolonner så det kan være lurt å spesifisere hvilke variabler man ønsker å hente ut.

dynarev <- dynarev_uttrekk(delregnr = 2421, 
                                    skjema = T, 
                                    skjema_cols = T, 
                                    sfu_cols = F)

Laste inn sfu-data fra flere skjema fra delreg i samme fil

Her lastes det inn SFU-data fra flere skjema (fra samme delregister).

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = c("HELSE38P", "HELSE39", "HELSE44P"),
                           skjema_cols = F,
                           sfu_cols = T)

Laste inn rådata

Her lastes det inn rådata fra de aktive enhetene i valgt skjema/valgte skjemaer.

dynarev <- dynarev_uttrekk(delregnr = 2421,
                           skjema = T,
                           skjema_cols = T,
                           raadata = T)