Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup, eval=FALSE--------------------------------------------------------
#
# # At this point you can download and install the the latest version of the
# # opendataformat package from CRAN:
# install.packages("opendataformat")
#
#
## ----read_odf-----------------------------------------------------------------
library(opendataformat)
path <- system.file("extdata", "data.odf.zip", package = "opendataformat")
df <- read_odf(file = path)
## ----view df, comment = ""----------------------------------------------------
df
## ----view df haven, eval=FALSE------------------------------------------------
# library(haven)
# View(df)
## ----read_odf language, eval=FALSE--------------------------------------------
# df_en <- read_odf(file = path, languages = "en")
## ----read_odf language all, eval=FALSE----------------------------------------
# df_en <- read_odf(file = path, languages = "all")
## ----read_odf language list, eval=FALSE---------------------------------------
# df_en <- read_odf(file = path, languages = c("en", "de"))
## ----read_odf all inputs, eval = FALSE----------------------------------------
# df <- read_odf(file, languages = "all", nrows = Inf, skip = 0, select = NULL)
## ----docu_odf, eval = FALSE---------------------------------------------------
# docu_odf(df)
## ----docu_odf print-----------------------------------------------------------
docu_odf(df, style = "print")
## ----docu_odf variables, comment=""-------------------------------------------
docu_odf(df, variables = "yes", style = "print")
## ----docu_odf selected variable default---------------------------------------
docu_odf(df$bap9001, style = "print")
## ----docu_odf languages all, eval = FALSE-------------------------------------
# docu_odf(df$bap9001, style = "print", variables = "yes", languages = "all")
## ----docu_odf languages code print--------------------------------------------
docu_odf(df$bap9001, style = "print", languages = "de")
## ----docu_odf languages code all data, eval = FALSE---------------------------
# docu_odf(df, style = "print", variables = "yes", languages = "de")
## ----docu own style, eval = TRUE, comment = ""--------------------------------
for (i in names(df)) {
cat(
paste0(attributes(df[[i]])$name, ": ", attributes(df[[i]])$label_de, "\n")
)
}
## ----getmetadata_odf1, comment = ""-------------------------------------------
getmetadata_odf(df, type = "label")
## ----getmetadata_odf2, comment = ""-------------------------------------------
getmetadata_odf(df$bap87, type = "valuelabels")
## ----docu_odf setLanguage2, eval = FALSE--------------------------------------
# df <- setlanguage_odf(df, language = "de")
#
# docu_odf(df$bap9001, style = "print")
## ----display languages--------------------------------------------------------
attributes(df)$languages
attr(df, "languages")
## ----dataset attributes, comment = ""-----------------------------------------
attributes(df)
## ----variable attributes, comment = ""----------------------------------------
attributes(df$bap87)
## ----variable label attributes, comment = ""----------------------------------
attributes(df$bap87)$label_de
## ----variable label attributes2, eval = FALSE, comment = ""-------------------
# attr(df$bap87, "label_de")
## ----attributes deletion, comment = ""----------------------------------------
attributes(df$bap87)$description_de <- NULL
attributes(df$bap87)$description_de
## ----getmetadata_odf3, comment = ""-------------------------------------------
getmetadata_odf(df, type = "labels")
## ----getmetadata_odf4, comment = ""-------------------------------------------
getmetadata_odf(df$bap96, type = "labels")
## ----getmetadata_odf5, eval = FALSE, comment = ""-----------------------------
# getmetadata_odf(df, type = "labels", language = "en")
## ----getmetadata_odf6, eval = FALSE, comment = ""-----------------------------
# df <- setlanguage_odf(df, language = "en")
# getmetadata_odf(df, type = "labels")
## ----getmetadata_odf valuelabels, comment = ""--------------------------------
getmetadata_odf(df$bap9001, type = "valuelabels")
## ----getmetadata_odf valuelabels names, comment = ""--------------------------
names(getmetadata_odf(df$bap9001, type = "valuelabels"))
## ----getmetadata_odf descriptions, comment = ""-------------------------------
getmetadata_odf(df, type = "description")
## ----getmetadata_odf url, eval = FALSE, comment = ""--------------------------
# getmetadata_odf(df, type = "url")
## ----getmetadata_odf type, eval = FALSE, comment = ""-------------------------
# getmetadata_odf(df, type = "type")
## ----write_odf, comment = "", eval = FALSE------------------------------------
# write_odf(
# x = df[, 1:4],
# file = "../df_1_4.odf.zip"
# )
#
# #or :
# df_14 <- df[, 1:4]
# write_odf(
# x = df[, 1:4],
# file = "df_1_4.odf.zip"
# )
## ----write_odf metadata, comment = "", eval = FALSE---------------------------
# write_odf(
# x = df,
# file = "../df_metadata.odf.zip",
# export_data = FALSE
# )
## ----write_odf english, comment = "", eval = FALSE----------------------------
# write_odf(
# x = df,
# file = "../df_en.odf.odf.zip",
# languages = "en"
# )
## ----write_odf english german, comment = "", eval = FALSE---------------------
# write_odf(
# x = df,
# file = "../df_en_de.odf.odf.zip",
# languages = c("en", "de")
# )
## ----as_odf_tbl, comment = "", eval = FALSE-----------------------------------
# #Create a data frame with four variables ind 5 rows
# exampledata <- data.frame(id = 1:5,
# name = c("Klaus", "Anna", "Rebecca",
# "Kevin", "Janina"),
# age = c(55, 40, 19, 25, 60),
# diagnosis = c(1,3,3,2,1))
# # Add metadata for dataset according to ODF tibble framework.
# attr(exampledata, "name") <- "patientdata"
# attr(exampledata, "label_en") <- "Patient Data"
# attr(exampledata, "description_en") <- "Patient database of the practice Dr. Sommer"
# attr(exampledata, "url") <- "www.example.url.en"
#
# # Add metadata for diagnosis variable with label, description and value labels.
# attr(exampledata$id, "name") <- "id"
# attr(exampledata$id, "label_en") <- "Patiend ID"
# attr(exampledata$id, "description_en") <- "Practice Patiend ID"
# attr(exampledata$diagnosis, "name") <- "diagnose"
# attr(exampledata$diagnosis, "label_en") <- "Diagnosis"
# attr(exampledata$diagnosis, "description_en") <- "Diagnosis patient last visit"
# valuelabels_diagnosis <- 1:4
# names(valuelabels_diagnosis) <- c("Covid", "Influenza", "Common cold", "Tonsillitis")
# attr(exampledata$diagnosis, "labels_en") <- valuelabels_diagnosis
# # use as_odf_bl to transform dataframe to an ODF tibble ('odf_tbl'-class object)
# example_odf <- as_odf_tbl(exampledata)
#
# # Display metadata of diagnosis Variable
# docu_odf(example_odf$diagnosis, style = "print")
## ----table, comment = ""------------------------------------------------------
table(df$bap87, useNA = "ifany")
## ----table attributes labels, comment = ""------------------------------------
attributes(df$bap87)$labels_en
## ----table attributes labels_de, comment = ""---------------------------------
attributes(df$bap87)$labels_de
## ----table factor, comment = ""-----------------------------------------------
table(factor(df$bap87, labels = names(attributes(df$bap87)$labels_en)))
## ----table factor getmetadata_odf, eval=F, comment = ""-----------------------
# table(factor(df$bap87,
# labels = names(getmetadata_odf(df$bap87, type = "valuelabels"))))
## ----table factor german, comment = ""----------------------------------------
table(
factor(
df$bap87,
labels = names(attributes(df$bap87)$labels_de)
)
)
## ----table factor german getmetadata_odf, comment = ""------------------------
table(
factor(
df$bap87,
labels = names(getmetadata_odf(df$bap87, type = "valuelabels",
language = "de"))
)
)
## ----merge with join, eval = FALSE--------------------------------------------
# library(dplyr)
# #similar to merge(df[,c(1:3,6)], df[,c(4:6)], by="name", all.x=T, all.y=F)
# merged_df <- left_join(df[, c(1:3, 6)], df[, c(4:6)], by = "name")
# #or
# merged_df <- left_join(df[, c(1:3, 6)], df[, c(4:6)])
## ----copy data, comment = ""--------------------------------------------------
bap87_rec <- df$bap87
## ----check metadata, comment = ""---------------------------------------------
attributes(bap87_rec)
## ----NA, comment = ""---------------------------------------------------------
for (row in seq(1, length(bap87_rec))) {
if (!is.na(bap87_rec[row]) && bap87_rec[row] <= -1) {
bap87_rec[row] <- NA
}
}
table(bap87_rec, useNA = "ifany")
## ----check metadata again, comment = ""---------------------------------------
attributes(bap87_rec)$labels_en
## ----copy metadata to recoded var, comment = ""-------------------------------
attributes(bap87_rec)$labels_en <-
unname(attributes(df$bap87)$labels_en)[3:7] # values
names(attributes(bap87_rec)$labels_en) <-
names(attributes(df$bap87)$labels_en)[3:7] # labels
attributes(bap87_rec)$labels_en
## ----remove language versions of labels, comment = ""-------------------------
attributes(bap87_rec)$labels_de <-
unname(attributes(df$bap87)$labels_de)[3:7] # values
names(attributes(bap87_rec)$labels_de) <-
names(attributes(df$bap87)$labels_de)[3:7] # labels
## ----change variable name of recoded var, comment = ""------------------------
attributes(bap87_rec)$name <- "bap87_rec"
attributes(bap87_rec)$name
## ----frequency table of recoded var, comment = ""-----------------------------
table(
factor(
bap87_rec,
labels = names(attributes(bap87_rec)$labels_en)
)
)
## ----barplot, comment = "", fig.height = 3, fig.width = 5, fig.align = "center"----
barplot(
table(
factor(
bap87_rec,
labels = names(attributes(bap87_rec)$labels_en)
)
),
main = attributes(bap87_rec)$description_en, # title
xlab = paste0(
attributes(bap87_rec)$name, ": ", attributes(bap87_rec)$label), # label
sub = attributes(bap87_rec)$url, # subtitle
cex.main = 0.9, cex.names = 0.7, cex.sub = 0.8, cex.axis = 0.6,
cex.lab = 0.7 # font sizes
)
## ----barplot german, comment = "", fig.height = 3, fig.width = 5, fig.align = "center"----
barplot(
table(
factor(
bap87_rec,
labels = names(attributes(bap87_rec)$labels_de)
)
),
main = attributes(bap87_rec)$description_de, # title
xlab = paste0(
attributes(bap87_rec)$name, ": ", attributes(bap87_rec)$label_de), # label
sub = attributes(bap87_rec)$url, # subtitle
cex.main = 0.7, cex.names = 0.5, cex.sub = 0.8, cex.axis = 0.7,
cex.lab = 0.7 # font sizes
)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.