Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev rlabel #27

Merged
merged 2 commits into from
Apr 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 43 additions & 44 deletions data/katalogdata.csv

Large diffs are not rendered by default.

98 changes: 52 additions & 46 deletions internal/create_table.R
Original file line number Diff line number Diff line change
Expand Up @@ -22,25 +22,31 @@ source("internal/add_funcs.R")


# Kontrollere funksjoner
add_func('validator', 'validate', keyword = "r kontrollere regelbasert")
add_func('confront', 'validate', keyword = "r kontrollere regelbasert")
add_func('ThError', 'Kostra', keyword = "r kontrollere statistisk")
add_func('Hb', 'Kostra', keyword = "r kontrollere statistisk")
add_func('Quartile', 'Kostra', keyword = "r kontrollere statistisk")
add_func('OutlierRegressionMicro', 'Kostra', keyword = "r kontrollere statistisk")
add_func('Rank2NumVar', 'Kostra', keyword = "r kontrollere statistisk" )
add_func("Diff2NumVar", "Kostra", keyword = "r kontrollere statistisk" )
add_func("AggrSml2NumVar", "Kostra", keyword = "r kontrollere statistisk" )
add_func("get_extremes", "struktuR", keyword = "r kontrollere statistisk" )
add_func('validator', 'validate', keyword = "rfunc kontrollere regelbasert")
add_func('confront', 'validate', keyword = "rfunc kontrollere regelbasert")
add_func('ThError', 'Kostra', keyword = "rfunc kontrollere statistisk")
add_func('Hb', 'Kostra', keyword = "rfunc kontrollere statistisk")
add_func('Quartile', 'Kostra', keyword = "rfunc kontrollere statistisk")
add_func('OutlierRegressionMicro', 'Kostra', keyword = "rfunc kontrollere statistisk")
add_func('Rank2NumVar', 'Kostra', keyword = "rfunc kontrollere statistisk" )
add_func("Diff2NumVar", "Kostra", keyword = "rfunc kontrollere statistisk" )
add_func("AggrSml2NumVar", "Kostra", keyword = "rfunc kontrollere statistisk" )
add_func("get_extremes", "struktuR", keyword = "rfunc kontrollere statistisk" )

# Imputere
add_func('modifier', 'dcmodify', keyword = "r imputere regelbasert")
add_func('impute_proxy', 'simputation', keyword = "r imputere donor")
add_func('impute_knn', 'simputation', keyword = "r imputere donor")
add_func('lm', 'stats', keyword = "r imputere analyse modellbasert")
add_func('impute_pmm', 'simputation', keyword = "r imputere donor")
add_func('impute_rhd', 'simputation', keyword = "r imputere donor")
add_func('LmImpute', 'Kostra', keyword = "r imputere modellbasert kontrollere statistisk")
add_func('modifier', 'dcmodify', keyword = "rfunc imputere regelbasert")
add_func('impute_proxy', 'simputation', keyword = "rfunc imputere donor")
add_func('impute_knn', 'simputation', keyword = "rfunc imputere donor")
add_func('lm', 'stats', keyword = "rfunc imputere analyse modellbasert",
name = 'Fitting Linear Models',
descrip = "'lm' is used to fit linear models. It can be used to carry out regression, single stratum analysis of variance and analysis of covariance (although aov may provide a more convenient interface for these).",
url = "https://search.r-project.org/R/refmans/stats/html/lm.html",
pack_url="https://search.r-project.org/R/refmans/stats/html/00Index.html"

)
#add_func('impute_pmm', 'simputation', keyword = "rfunc imputere donor") # bugs in function
add_func('impute_rhd', 'simputation', keyword = "rfunc imputere donor")
add_func('LmImpute', 'Kostra', keyword = "rfunc imputere modellbasert kontrollere statistisk")
add_func('SVC', 'sklearn.svm', keyword='python imputere maskinlaering',
name="C-Support Vector Classification.",
descrip = 'The implementation is based on libsvm. The fit time scales at least quadratically with the number of samples and may be impractical beyond tens of thousands of samples.',
Expand All @@ -62,73 +68,73 @@ add_func('OLS', 'statsmodels.regression.linear_model', keyword='python imputere


# Strukturere
add_func("HierarchyCompute", "SSBtools", keyword = "r strukturere")
add_func("model_aggregate", "SSBtools", keyword = "r strukturere 6.2")
add_func("HierarchyCompute", "SSBtools", keyword = "rfunc strukturere")
add_func("model_aggregate", "SSBtools", keyword = "rfunc strukturere 6.2")

# Konfidensialitet
add_func("PLSroundingPublish", "SmallCountRounding", keyword = "r konfidensialitet avrunding 6.4")
add_func("ProtectKostra", "Kostra", keyword = "r konfidensialitet undertrykking 6.4" )
add_func("ProtectTableData", "easySdcTable", keyword = "r konfidensialitet undertrykking 6.4" )
add_func("SdcForetakPerson", "SdcForetakPerson", keyword = "r konfidensialitet undertrykking avrunding 6.4" )

add_func("SuppressSmallCounts", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("SuppressDominantCells", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("SuppressFewContributors", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("SuppressKDisclosure", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("GaussSuppressionFromData", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("GaussSuppressDec", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("SuppressionFromDecimals", "GaussSuppression", keyword = "r konfidensialitet undertrykking 6.4")
add_func("PLSroundingPublish", "SmallCountRounding", keyword = "rfunc konfidensialitet avrunding 6.4")
add_func("ProtectKostra", "Kostra", keyword = "rfunc konfidensialitet undertrykking 6.4" )
add_func("ProtectTableData", "easySdcTable", keyword = "rfunc konfidensialitet undertrykking 6.4" )
add_func("SdcForetakPerson", "SdcForetakPerson", keyword = "rfunc konfidensialitet undertrykking avrunding 6.4" )

add_func("SuppressSmallCounts", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")
add_func("SuppressDominantCells", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")
add_func("SuppressFewContributors", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")
add_func("SuppressKDisclosure", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")
add_func("GaussSuppressionFromData", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")
add_func("GaussSuppressDec", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")
add_func("SuppressionFromDecimals", "GaussSuppression", keyword = "rfunc konfidensialitet undertrykking 6.4")

# Sesongjustering - missing html for functions in pickmdl. Can't install with Java so use manual
# eexport = False for all due to difficulties in installing in Admin sone
add_func("x13", "RJDemetra", keyword = "r sesongjustering 6.1",
add_func("x13", "RJDemetra", keyword = "rfunc sesongjustering 6.1",
name = "Seasonal Adjustment with X13-ARIMA",
descrip = "Functions to estimate the seasonally adjusted series (sa) with the X13-ARIMA method. This is achieved by decomposing the time series (y) into the trend-cycle (t), the seasonal component (s) and the irregular component (i). The final seasonally adjusted series shall be free of seasonal and calendar-related movements. x13 returns a preformatted result while jx13 returns the Java objects resulting from the seasonal adjustment.",
export = FALSE) # Currently not included in tests and imports in package. (problems)
add_func("x13_spec", "RJDemetra", keyword = "r sesongjustering 6.1",
add_func("x13_spec", "RJDemetra", keyword = "rfunc sesongjustering 6.1",
name = "X-13ARIMA model specification, SA/X13",
descrip = 'Function to create (and/or modify) a c("SA_spec", "X13") class object with the SA model specification for the X13 method. It can be done from a pre-defined "JDemetra+" model specification (a character), a previous specification (c("SA_spec", "X13") object) or a seasonal adjustment model (c("SA", "X13") object).',
export = FALSE) # Currently not included in tests and imports in package. (problems)
add_func("x13_pickmdl", "pickmdl", keyword = "r sesongjustering 6.1" , url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_pickmdl.Rd",
add_func("x13_pickmdl", "pickmdl", keyword = "rfunc sesongjustering 6.1" , url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_pickmdl.Rd",
name = "x13 with PICKMDL and partial concurrent possibilities",
descrip="x13 can be run as usual (automdl) or with a PICKMDL specification. The ARIMA model, outliers and filters can be identified at a certain date and then held fixed (with a new outlier-span).",
export = FALSE)
add_func("x13_automdl", "pickmdl", keyword = "r sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_pickmdl.Rd",
add_func("x13_automdl", "pickmdl", keyword = "rfunc sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_pickmdl.Rd",
name = "x13 with PICKMDL and partial concurrent possibilities",
descrip = "x13 can be run as usual (automdl) or with a PICKMDL specification. The ARIMA model, outliers and filters can be identified at a certain date and then held fixed (with a new outlier-span).",
export = FALSE)
add_func("x13_both", "pickmdl", keyword = "r sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_both.Rd",
add_func("x13_both", "pickmdl", keyword = "rfunc sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_both.Rd",
name = "x13_spec and x13_pickmdl wrapped as a single function",
descrip = "Output is determined by the parameter: both_output.",
export = FALSE)

add_func("x13_text_frame", "pickmdl", keyword = "r sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_text_frame.Rd",
add_func("x13_text_frame", "pickmdl", keyword = "rfunc sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/x13_text_frame.Rd",
pack_url="https://github.com/statisticsnorway/pickmdl/",
name = "Multiple x13_both runs with code input from a data frame",
descrip = "Gjør det mulig med sesongjustering av mange serier basert på parametere i en data.frame (f.eks lest inn fra en excel-fil).",
export = FALSE)
add_func("konstruksjon", "pickmdl", keyword = "r sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/konstruksjon.Rd",
add_func("konstruksjon", "pickmdl", keyword = "rfunc sesongjustering 6.1", url="https://github.com/statisticsnorway/pickmdl/blob/main/man/konstruksjon.Rd",
pack_url="https://github.com/statisticsnorway/pickmdl/",
name = "Lage faktorer for kalendereffekter",
descrip = "Fleksibel funksjon som lager ulike kalendervariable, som f.eks. TD-, WD- og påskevariable, tilpasset norske forhold.",
export = FALSE)


# Analyse
add_func("shortest_path_igraph", "GISSB", keyword = "r analyse romlig")
add_func("shortest_path_cppRouting", "GISSB", keyword = "r analyse romlig")
add_func("shortest_path_igraph", "GISSB", keyword = "rfunc analyse romlig")
add_func("shortest_path_cppRouting", "GISSB", keyword = "rfunc analyse romlig")

# Indeksberegning
add_func("CalcInd", "SSBpris", keyword = "r indeksberegning")
add_func("CalcIndS2", "SSBpris", keyword = "r indeksberegning usikkerhetsberegning")
add_func("CalcInd", "SSBpris", keyword = "rfunc indeksberegning")
add_func("CalcIndS2", "SSBpris", keyword = "rfunc indeksberegning usikkerhetsberegning")

# Vektberegning
add_func("struktur_model", "struktuR", keyword = "r vektberegning modellbasert",
add_func("struktur_model", "struktuR", keyword = "rfunc vektberegning modellbasert",
url = "https://statisticsnorway.github.io/struktuR/reference/struktur_model.html")
add_func("quantile_weighted", "SSBtools", keyword = "r analyse vektberegning")
add_func("quantile_weighted", "SSBtools", keyword = "rfunc analyse vektberegning")

# Usikkerhetsberegning
add_func("CalibrateSSB", "CalibrateSSB", keyword = "r vektberegning usikkerhetsberegning designbasert")
add_func("PanelEstimation", "CalibrateSSB", keyword = "r vektberegning usikkerhetsberegning designbasert")
add_func("CalibrateSSB", "CalibrateSSB", keyword = "rfunc vektberegning usikkerhetsberegning designbasert")
add_func("PanelEstimation", "CalibrateSSB", keyword = "rfunc vektberegning usikkerhetsberegning designbasert")


4 changes: 2 additions & 2 deletions website/catalog.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ testdata = JSON.parse(my_ojs_data)
//| panel: input


viewof lang = Inputs.radio(new Map([["R", "r"], ["python", "python"]]),
{label: "Språk: ", value: "r"}
viewof lang = Inputs.radio(new Map([["R", "rfunc"], ["python", "python"]]),
{label: "Språk: ", value: "rfunc"}
)


Expand Down
1 change: 1 addition & 0 deletions website/catalogue_conf.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ dt <- dt[grepl("konfidensialitet", dt$keyword), ]

# Add column for language
dt["språk"] <- stringr::word(dt$keyword)[1]
dt["språk"] <- ifelse(dt["språk"] == "rfunc", "R", "Python")

# Add column for combination of function name and link
dt["func_link"] <- str_trim(do.call(paste, c(dt[c("func", "url")], sep = ";")))
Expand Down
1 change: 1 addition & 0 deletions website/catalogue_edit.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ dt <- dt[grepl("impute", dt$keyword) | grepl("kontrollere", dt$keyword), ]

# Add column for language
dt["språk"] <- stringr::word(dt$keyword)[1]
dt["språk"] <- ifelse(dt["språk"] == "rfunc", "R", "Python")

# Add column for combination of function name and link
dt["func_link"] <- str_trim(do.call(paste, c(dt[c("func", "url")], sep = ";")))
Expand Down
5 changes: 4 additions & 1 deletion website/catalogue_sesong.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,8 @@ format:
page-layout: full
sidebar: false
---
<br>

Sesongjustering er å bruke statistiske metoder for å fjerne systematiske sesongvariasjoner fra en månedlig eller kvartalsvis tidsserie, slik at tidsserien i størst mulig grad uttrykker den reelle utviklingen over tid. I tillegg forsøker man å fjerne kalendereffektene som varierer fra år til år, slik som påske. I sesongjusteringsprosessen spaltes den prekorrigerte (kalenderjusterte) tidsserien opp i tre komponenter: sesong, en irregulær og trend-syklus. Når dataene er korrigert for de sesongrelaterte forholdene, vil man stå igjen med et klarere bilde av den underliggende utviklingen i tidsserien som består av trend-syklus og irregulær komponent. Sesongjusterte data brukes ofte som utgangspunkt for opprettelse eller revidering av økonomisk politikk og økonomisk forskning på høyt nivå. Trend-syklus-komponenten er glattere enn sesongjusterte tall, og kan evt. formidles til brukerne i tillegg. I tidsserieanalyse kan en også justere tidsseriene for evt. brudd. Du kan finne mer informasjon om Sesongjustering og tidsserieanalyse på [Byrånettet](https://ssbno.sharepoint.com/sites/Metodikkistatistikkproduksjonen/SitePages/Sesongjustering.aspx).
Sesongjustering er å bruke statistiske metoder for å fjerne systematiske sesongvariasjoner fra en månedlig eller kvartalsvis tidsserie, slik at tidsserien i størst mulig grad uttrykker den reelle utviklingen over tid. I tillegg forsøker man å fjerne kalendereffektene som varierer fra år til år, slik som påske. I sesongjusteringsprosessen spaltes den prekorrigerte (kalenderjusterte) tidsserien opp i tre komponenter: sesong, en irregulær og trend-syklus. Når dataene er korrigert for de sesongrelaterte forholdene, vil man stå igjen med et klarere bilde av den underliggende utviklingen i tidsserien som består av trend-syklus og irregulær komponent. Sesongjusterte data brukes ofte som utgangspunkt for opprettelse eller revidering av økonomisk politikk og økonomisk forskning på høyt nivå. Trend-syklus-komponenten er glattere enn sesongjusterte tall, og kan evt. formidles til brukerne i tillegg. I tidsserieanalyse kan en også justere tidsseriene for evt. brudd.

Du kan finne mer informasjon om Sesongjustering og tidsserieanalyse på [Byrånettet](https://ssbno.sharepoint.com/sites/Metodikkistatistikkproduksjonen/SitePages/Sesongjustering.aspx).
2 changes: 2 additions & 0 deletions website/prosess.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ dt <- read.csv("../data/katalogdata.csv")

# Add columns for language and new names
dt["Språk"] <- stringr::word(dt$keyword)[1]
dt["Språk"] <- ifelse(dt["Språk"] == "rfunc", "R", "Python")

dt$Funksjon = kableExtra::cell_spec(dt$func, link = dt$url, new_tab = T)
dt$Pakke <- dt$pack
dt$Navn <- dt$navn
Expand Down
Loading