Compare commits

...

2 commits

19 changed files with 133 additions and 101 deletions

View file

@ -8,7 +8,7 @@ message: 'To cite package "FreesearchR" in publications use:'
type: software type: software
license: AGPL-3.0-or-later license: AGPL-3.0-or-later
title: 'FreesearchR: Easy data analysis for clinicians' title: 'FreesearchR: Easy data analysis for clinicians'
version: 26.3.6 version: 26.4.1
doi: 10.5281/zenodo.14527429 doi: 10.5281/zenodo.14527429
identifiers: identifiers:
- type: url - type: url

View file

@ -1,6 +1,6 @@
Package: FreesearchR Package: FreesearchR
Title: Easy data analysis for clinicians Title: Easy data analysis for clinicians
Version: 26.3.6 Version: 26.4.1
Authors@R: c( Authors@R: c(
person("Andreas Gammelgaard", "Damsbo",email="agdamsbo@clin.au.dk", role = c("aut", "cre"), person("Andreas Gammelgaard", "Damsbo",email="agdamsbo@clin.au.dk", role = c("aut", "cre"),
comment = c(ORCID = "0000-0002-7559-1154")), comment = c(ORCID = "0000-0002-7559-1154")),

View file

@ -1,3 +1,7 @@
# FreesearchR 26.4.1
Minor adjustments and bug fixes including streamlining icon use to only use phosphoricons across the app.
# FreesearchR 26.3.6 # FreesearchR 26.3.6
*FIX* Plot single variable in Likert plot. *FIX* Plot single variable in Likert plot.

View file

@ -1 +1 @@
app_version <- function()'26.3.6' app_version <- function()'26.4.1'

View file

@ -309,21 +309,29 @@ class_icons <- function(x) {
lapply(x,class_icons) lapply(x,class_icons)
} else { } else {
if (identical(x, "numeric")) { if (identical(x, "numeric")) {
shiny::icon("calculator") phosphoricons::ph("calculator")
# shiny::icon("calculator")
} else if (identical(x, "factor")) { } else if (identical(x, "factor")) {
shiny::icon("chart-simple") phosphoricons::ph("chart-bar")
# shiny::icon("chart-simple")
} else if (identical(x, "integer")) { } else if (identical(x, "integer")) {
shiny::icon("arrow-down-1-9") phosphoricons::ph("list-numbers")
# shiny::icon("arrow-down-1-9")
} else if (identical(x, "character")) { } else if (identical(x, "character")) {
shiny::icon("arrow-down-a-z") phosphoricons::ph("text-aa")
# shiny::icon("arrow-down-a-z")
} else if (identical(x, "logical")) { } else if (identical(x, "logical")) {
shiny::icon("toggle-off") phosphoricons::ph("toggle-left")
# shiny::icon("toggle-off")
} else if (any(c("Date", "POSIXt") %in% x)) { } else if (any(c("Date", "POSIXt") %in% x)) {
shiny::icon("calendar-days") phosphoricons::ph("calendar")
# shiny::icon("calendar-days")
} else if (any("POSIXct", "hms") %in% x) { } else if (any("POSIXct", "hms") %in% x) {
shiny::icon("clock") phosphoricons::ph("clock")
# shiny::icon("clock")
} else { } else {
shiny::icon("table") phosphoricons::ph("calendar")
# shiny::icon("table")
}} }}
} }
@ -342,21 +350,29 @@ type_icons <- function(x) {
lapply(x,class_icons) lapply(x,class_icons)
} else { } else {
if (identical(x, "continuous")) { if (identical(x, "continuous")) {
shiny::icon("calculator") phosphoricons::ph("calculator")
# shiny::icon("calculator")
} else if (identical(x, "categorical")) { } else if (identical(x, "categorical")) {
shiny::icon("chart-simple") phosphoricons::ph("chart-bar")
# shiny::icon("chart-simple")
} else if (identical(x, "ordinal")) { } else if (identical(x, "ordinal")) {
shiny::icon("arrow-down-1-9") phosphoricons::ph("list-numbers")
# shiny::icon("arrow-down-1-9")
} else if (identical(x, "text")) { } else if (identical(x, "text")) {
shiny::icon("arrow-down-a-z") phosphoricons::ph("text-aa")
# shiny::icon("arrow-down-a-z")
} else if (identical(x, "dichotomous")) { } else if (identical(x, "dichotomous")) {
shiny::icon("toggle-off") phosphoricons::ph("toggle-left")
# shiny::icon("toggle-off")
} else if (identical(x,"datetime")) { } else if (identical(x,"datetime")) {
shiny::icon("calendar-days") phosphoricons::ph("calendar")
# shiny::icon("calendar-days")
} else if (identical(x,"id")) { } else if (identical(x,"id")) {
shiny::icon("id-card") phosphoricons::ph("identification-badge")
# shiny::icon("id-card")
} else { } else {
shiny::icon("table") phosphoricons::ph("table")
# shiny::icon("table")
} }
} }
} }

View file

@ -20,7 +20,8 @@ data_visuals_ui <- function(id, tab_title = "Plots", ...) {
bslib::accordion_panel( bslib::accordion_panel(
value = "acc_pan_plot", value = "acc_pan_plot",
title = "Create plot", title = "Create plot",
icon = bsicons::bs_icon("graph-up"), icon = phosphoricons::ph("chart-line"),
# icon = bsicons::bs_icon("graph-up"),
shiny::uiOutput(outputId = ns("primary")), shiny::uiOutput(outputId = ns("primary")),
shiny::helpText( shiny::helpText(
i18n$t( i18n$t(
@ -37,7 +38,8 @@ data_visuals_ui <- function(id, tab_title = "Plots", ...) {
inputId = ns("act_plot"), inputId = ns("act_plot"),
label = i18n$t("Plot"), label = i18n$t("Plot"),
width = "100%", width = "100%",
icon = shiny::icon("palette"), icon = phosphoricons::ph("paint-brush"),
# icon = shiny::icon("palette"),
disabled = FALSE disabled = FALSE
), ),
shiny::helpText(i18n$t('Adjust settings, then press "Plot".')) shiny::helpText(i18n$t('Adjust settings, then press "Plot".'))
@ -45,7 +47,8 @@ data_visuals_ui <- function(id, tab_title = "Plots", ...) {
bslib::accordion_panel( bslib::accordion_panel(
value = "acc_pan_download", value = "acc_pan_download",
title = "Download", title = "Download",
icon = bsicons::bs_icon("download"), icon = phosphoricons::ph("download-simple"),
# icon = bsicons::bs_icon("download"),
shinyWidgets::noUiSliderInput( shinyWidgets::noUiSliderInput(
inputId = ns("height_slide"), inputId = ns("height_slide"),
label = i18n$t("Plot height (mm)"), label = i18n$t("Plot height (mm)"),
@ -84,7 +87,8 @@ data_visuals_ui <- function(id, tab_title = "Plots", ...) {
shiny::downloadButton( shiny::downloadButton(
outputId = ns("download_plot"), outputId = ns("download_plot"),
label = i18n$t("Download plot"), label = i18n$t("Download plot"),
icon = shiny::icon("download") icon = phosphoricons::ph("arrow-fat-down")
# icon = shiny::icon("download")
) )
) )
), ),

View file

@ -1 +1 @@
hosted_version <- function()'v26.3.6-260331' hosted_version <- function()'v26.4.1-260401'

View file

@ -37,20 +37,6 @@ landing_page_ui <- function(i18n) {
div( div(
class = "container my-5", class = "container my-5",
# Introduction text
# div(
# class = "row mb-5",
# div(
# class = "col-12 text-center",
# p(
# class = "lead",
# i18n$t("Start with FreesearchR for basic data evaluation and analysis."),
# i18n$t("When you need more advanced tools, you'll be better prepared to use R directly."),
# style = "font-size: 1.2rem; color: #555;"
# )
# )
# ),
# Core Features Section # Core Features Section
h2(i18n$t("Core Features"), class = "text-center mb-4", h2(i18n$t("Core Features"), class = "text-center mb-4",
style = "color: #1E4A8F; font-weight: 600;"), style = "color: #1E4A8F; font-weight: 600;"),
@ -68,7 +54,8 @@ landing_page_ui <- function(i18n) {
class = "card-body text-center p-4", class = "card-body text-center p-4",
div( div(
style = "font-size: 3rem; color: #1E4A8F; margin-bottom: 15px;", style = "font-size: 3rem; color: #1E4A8F; margin-bottom: 15px;",
fa("file-import") phosphoricons::ph("folder-simple-plus", weight = "bold")
# fa("file-import")
), ),
h4(i18n$t("Import Data"), class = "card-title", style = "color: #2D2D42; font-weight: 600;"), h4(i18n$t("Import Data"), class = "card-title", style = "color: #2D2D42; font-weight: 600;"),
p( p(
@ -89,7 +76,8 @@ landing_page_ui <- function(i18n) {
class = "card-body text-center p-4", class = "card-body text-center p-4",
div( div(
style = "font-size: 3rem; color: #1E4A8F; margin-bottom: 15px;", style = "font-size: 3rem; color: #1E4A8F; margin-bottom: 15px;",
fa("pen-to-square") phosphoricons::ph("note-pencil", weight = "bold")
# fa("pen-to-square")
), ),
h4(i18n$t("Data Management"), class = "card-title", style = "color: #2D2D42; font-weight: 600;"), h4(i18n$t("Data Management"), class = "card-title", style = "color: #2D2D42; font-weight: 600;"),
p( p(
@ -110,7 +98,8 @@ landing_page_ui <- function(i18n) {
class = "card-body text-center p-4", class = "card-body text-center p-4",
div( div(
style = "font-size: 3rem; color: #1E4A8F; margin-bottom: 15px;", style = "font-size: 3rem; color: #1E4A8F; margin-bottom: 15px;",
fa("magnifying-glass-chart") phosphoricons::ph("magnifying-glass", weight = "bold")
# fa("magnifying-glass-chart")
), ),
h4(i18n$t("Descriptive Statistics"), class = "card-title", style = "color: #2D2D42; font-weight: 600;"), h4(i18n$t("Descriptive Statistics"), class = "card-title", style = "color: #2D2D42; font-weight: 600;"),
p( p(
@ -135,7 +124,7 @@ landing_page_ui <- function(i18n) {
style = "border-left: 4px solid #8A4FFF;", style = "border-left: 4px solid #8A4FFF;",
div( div(
class = "card-body", class = "card-body",
h5(fa("chart-line"), " ", i18n$t("Data Visualization"), class = "card-title", style = "color: #2D2D42;"), h5(phosphoricons::ph("chart-line", weight = "bold"), " ", i18n$t("Data Visualization"), class = "card-title", style = "color: #2D2D42;"),
p(class = "card-text small", i18n$t("Create simple, clean plots for quick insights and overview")) p(class = "card-text small", i18n$t("Create simple, clean plots for quick insights and overview"))
) )
) )
@ -147,7 +136,7 @@ landing_page_ui <- function(i18n) {
style = "border-left: 4px solid #8A4FFF;", style = "border-left: 4px solid #8A4FFF;",
div( div(
class = "card-body", class = "card-body",
h5(fa("calculator"), " ", i18n$t("Regression Models"), class = "card-title", style = "color: #2D2D42;"), h5(phosphoricons::ph("calculator", weight = "bold"), " ", i18n$t("Regression Models"), class = "card-title", style = "color: #2D2D42;"),
p(class = "card-text small", i18n$t("Build simple regression models for advanced analysis")) p(class = "card-text small", i18n$t("Build simple regression models for advanced analysis"))
) )
) )
@ -164,7 +153,7 @@ landing_page_ui <- function(i18n) {
style = "background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); border: none;", style = "background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); border: none;",
div( div(
class = "card-body p-4", class = "card-body p-4",
h4(fa("download"), " ", i18n$t("Export & Learn"), class = "text-center mb-3", style = "color: #1E4A8F;"), h4(phosphoricons::ph("book-bookmark", weight = "bold"), " ", i18n$t("Export & Learn"), class = "text-center mb-3", style = "color: #1E4A8F;"),
div( div(
class = "row text-center", class = "row text-center",
div( div(

View file

@ -19,7 +19,8 @@ data_missings_ui <- function(id, ...) {
bslib::accordion_panel( bslib::accordion_panel(
value = "acc_pan_mis", value = "acc_pan_mis",
title = "Settings", title = "Settings",
icon = bsicons::bs_icon("gear"), icon = phosphoricons::ph("gear"),
# icon = bsicons::bs_icon("gear"),
shiny::conditionalPanel( shiny::conditionalPanel(
condition = "output.missings == true", condition = "output.missings == true",
shiny::uiOutput(ns("missings_method")), shiny::uiOutput(ns("missings_method")),
@ -36,14 +37,16 @@ data_missings_ui <- function(id, ...) {
inputId = ns("act_miss"), inputId = ns("act_miss"),
label = i18n$t("Evaluate"), label = i18n$t("Evaluate"),
width = "100%", width = "100%",
icon = shiny::icon("calculator"), icon = phosphoricons::ph("calculator"),
# icon = shiny::icon("calculator"),
disabled = TRUE disabled = TRUE
) )
), ),
do.call(bslib::accordion_panel, c( do.call(bslib::accordion_panel, c(
list( list(
title = "Download", title = "Download",
icon = bsicons::bs_icon("file-earmark-arrow-down") icon = phosphoricons::ph("download-simple")
# icon = bsicons::bs_icon("file-earmark-arrow-down")
), ),
table_download_ui(id = ns("tbl_dwn"), title = NULL) table_download_ui(id = ns("tbl_dwn"), title = NULL)
)) ))

View file

@ -39,7 +39,8 @@ plot_download_ui <- regression_ui <- function(id, ...) {
shiny::downloadButton( shiny::downloadButton(
outputId = ns("download_plot"), outputId = ns("download_plot"),
label = "Download plot", label = "Download plot",
icon = shiny::icon("download") icon = phosphoricons::ph("arrow-fat-down")
# icon = shiny::icon("download")
) )
) )
} }

View file

@ -43,7 +43,8 @@ m_redcap_readUI <- function(id, title = TRUE, url = NULL) {
shiny::actionButton( shiny::actionButton(
inputId = ns("data_connect"), inputId = ns("data_connect"),
label = i18n$t("Connect"), label = i18n$t("Connect"),
icon = shiny::icon("link", lib = "glyphicon"), icon = phosphoricons::ph("link",weight = "bold"),
# icon = shiny::icon("link", lib = "glyphicon"),
width = "100%", width = "100%",
disabled = TRUE disabled = TRUE
), ),
@ -99,7 +100,8 @@ m_redcap_readUI <- function(id, title = TRUE, url = NULL) {
shinyWidgets::dropMenu( shinyWidgets::dropMenu(
shiny::actionButton( shiny::actionButton(
inputId = ns("dropdown_params"), inputId = ns("dropdown_params"),
label = shiny::icon("filter"), label = phosphoricons::ph("funnel",weight = "bold"),
# label = shiny::icon("filter"),
width = "50px" width = "50px"
), ),
filter_ui filter_ui
@ -118,7 +120,8 @@ m_redcap_readUI <- function(id, title = TRUE, url = NULL) {
shiny::actionButton( shiny::actionButton(
inputId = ns("data_import"), inputId = ns("data_import"),
label = i18n$t("Import"), label = i18n$t("Import"),
icon = shiny::icon("download", lib = "glyphicon"), icon = phosphoricons::ph("download-simple",weight = "bold"),
# icon = shiny::icon("download", lib = "glyphicon"),
width = "100%", width = "100%",
disabled = TRUE disabled = TRUE
), ),

View file

@ -57,7 +57,8 @@ regression_ui <- function(id, ...) {
bslib::accordion_panel( bslib::accordion_panel(
value = "acc_pan_reg", value = "acc_pan_reg",
title = i18n$t("Regression"), title = i18n$t("Regression"),
icon = bsicons::bs_icon("calculator"), icon = phosphoricons::ph("calculator"),
# icon = bsicons::bs_icon("calculator"),
shiny::uiOutput(outputId = ns("outcome_var")), shiny::uiOutput(outputId = ns("outcome_var")),
# shiny::selectInput( # shiny::selectInput(
# inputId = "design", # inputId = "design",
@ -91,7 +92,8 @@ regression_ui <- function(id, ...) {
bslib::input_task_button( bslib::input_task_button(
id = ns("load"), id = ns("load"),
label = i18n$t("Analyse"), label = i18n$t("Analyse"),
icon = bsicons::bs_icon("pencil"), icon = phosphoricons::ph("math-operations"),
# icon = bsicons::bs_icon("pencil"),
label_busy = i18n$t("Working..."), label_busy = i18n$t("Working..."),
icon_busy = fontawesome::fa_i("arrows-rotate", icon_busy = fontawesome::fa_i("arrows-rotate",
class = "fa-spin", class = "fa-spin",
@ -136,7 +138,8 @@ regression_ui <- function(id, ...) {
list( list(
value = "acc_pan_coef_plot", value = "acc_pan_coef_plot",
title = "Coefficients plot", title = "Coefficients plot",
icon = bsicons::bs_icon("bar-chart-steps"), icon = phosphoricons::ph("chart-bar-horizontal"),
# icon = bsicons::bs_icon("bar-chart-steps"),
shiny::tags$br(), shiny::tags$br(),
shiny::uiOutput(outputId = ns("plot_model")) shiny::uiOutput(outputId = ns("plot_model"))
), ),
@ -179,7 +182,8 @@ regression_ui <- function(id, ...) {
shiny::downloadButton( shiny::downloadButton(
outputId = ns("download_plot"), outputId = ns("download_plot"),
label = i18n$t("Download plot"), label = i18n$t("Download plot"),
icon = shiny::icon("download") icon = phosphoricons::ph("arrow-fat-down")
# icon = shiny::icon("download")
) )
) )
) )
@ -200,7 +204,8 @@ regression_ui <- function(id, ...) {
bslib::accordion_panel( bslib::accordion_panel(
value = "acc_pan_checks", value = "acc_pan_checks",
title = "Checks", title = "Checks",
icon = bsicons::bs_icon("clipboard-check"), icon = phosphoricons::ph("checks"),
# icon = bsicons::bs_icon("clipboard-check"),
shiny::uiOutput(outputId = ns("plot_checks")) shiny::uiOutput(outputId = ns("plot_checks"))
) )
) )

Binary file not shown.

View file

@ -37,7 +37,8 @@ table_download_server <- function(id, data, file_name = "table", ...) {
shiny::downloadButton( shiny::downloadButton(
outputId = ns("act_table"), outputId = ns("act_table"),
label = i18n$t("Download table"), label = i18n$t("Download table"),
icon = shiny::icon("download") icon = phosphoricons::ph("arrow-fat-down")
# icon = shiny::icon("download")
) )
} else { } else {
# Return NULL to show nothing # Return NULL to show nothing

View file

@ -15,7 +15,8 @@ ui_elements <- function(selection) {
"home" = bslib::nav_panel( "home" = bslib::nav_panel(
title = "FreesearchR", title = "FreesearchR",
# title = shiny::div(htmltools::img(src="FreesearchR-logo-white-nobg-h80.png")), # title = shiny::div(htmltools::img(src="FreesearchR-logo-white-nobg-h80.png")),
icon = shiny::icon("house"), icon = phosphoricons::ph("house", weight = "bold"),
# icon = shiny::icon("house"),
shiny::fluidRow( shiny::fluidRow(
# "The browser language is", # "The browser language is",
# textOutput("your_lang"), # textOutput("your_lang"),
@ -45,7 +46,8 @@ ui_elements <- function(selection) {
############################################################################## ##############################################################################
"import" = bslib::nav_panel( "import" = bslib::nav_panel(
title = i18n$t("Get started"), title = i18n$t("Get started"),
icon = shiny::icon("play"), icon = phosphoricons::ph("play", weight = "bold"),
# icon = shiny::icon("play"),
value = "nav_import", value = "nav_import",
shiny::fluidRow( shiny::fluidRow(
shiny::column(width = 2), shiny::column(width = 2),
@ -122,7 +124,8 @@ ui_elements <- function(selection) {
inputId = "modal_initial_view", inputId = "modal_initial_view",
label = i18n$t("Quick overview"), label = i18n$t("Quick overview"),
width = "100%", width = "100%",
icon = shiny::icon("binoculars"), icon = phosphoricons::ph("binoculars"),
# icon = shiny::icon("binoculars"),
disabled = FALSE disabled = FALSE
), ),
shiny::br(), shiny::br(),
@ -166,7 +169,8 @@ ui_elements <- function(selection) {
inputId = "act_start", inputId = "act_start",
label = i18n$t("Let's begin!"), label = i18n$t("Let's begin!"),
width = "100%", width = "100%",
icon = shiny::icon("play"), icon = phosphoricons::ph("play"),
# icon = shiny::icon("play"),
disabled = TRUE disabled = TRUE
), ),
shiny::br(), shiny::br(),
@ -185,11 +189,13 @@ ui_elements <- function(selection) {
############################################################################## ##############################################################################
"prepare" = bslib::nav_menu( "prepare" = bslib::nav_menu(
title = i18n$t("Prepare"), title = i18n$t("Prepare"),
icon = shiny::icon("pen-to-square"), icon = phosphoricons::ph("note-pencil", weight = "bold"),
# icon = shiny::icon("pen-to-square"),
value = "nav_prepare", value = "nav_prepare",
bslib::nav_panel( bslib::nav_panel(
title = i18n$t("Overview and filter"), title = i18n$t("Overview and filter"),
icon = shiny::icon("eye"), icon = phosphoricons::ph("eye"),
# icon = shiny::icon("eye"),
value = "nav_prepare_overview", value = "nav_prepare_overview",
tags$h3(i18n$t("Overview and filtering")), tags$h3(i18n$t("Overview and filtering")),
fluidRow( fluidRow(
@ -264,7 +270,8 @@ ui_elements <- function(selection) {
), ),
bslib::nav_panel( bslib::nav_panel(
title = i18n$t("Edit and create data"), title = i18n$t("Edit and create data"),
icon = shiny::icon("file-pen"), icon = phosphoricons::ph("pencil-line"),
# icon = shiny::icon("file-pen"),
tags$h3(i18n$t("Subset, rename and convert variables")), tags$h3(i18n$t("Subset, rename and convert variables")),
fluidRow(shiny::column( fluidRow(shiny::column(
width = 9, shiny::tags$p( width = 9, shiny::tags$p(
@ -293,13 +300,13 @@ ui_elements <- function(selection) {
width = 3, width = 3,
shiny::actionButton( shiny::actionButton(
inputId = "modal_update", inputId = "modal_update",
label = i18n$t("Modify factor levels"), label = i18n$t("Modify factor"),
width = "100%" width = "100%"
), ),
shiny::tags$br(), shiny::tags$br(),
shiny::helpText( shiny::helpText(i18n$t(
i18n$t("Reorder or rename the levels of factor/categorical variables.") "Modify the levels of factor/categorical variables."
), )),
shiny::tags$br(), shiny::tags$br(),
shiny::tags$br() shiny::tags$br()
), ),
@ -312,9 +319,7 @@ ui_elements <- function(selection) {
), ),
shiny::tags$br(), shiny::tags$br(),
shiny::helpText( shiny::helpText(
i18n$t( i18n$t("Create factor/categorical variable from other variables.")
"Create factor/categorical variable from a continous variable (number/date/time)."
)
), ),
shiny::tags$br(), shiny::tags$br(),
shiny::tags$br() shiny::tags$br()
@ -391,14 +396,16 @@ ui_elements <- function(selection) {
"describe" = "describe" =
bslib::nav_menu( bslib::nav_menu(
title = i18n$t("Evaluate"), title = i18n$t("Evaluate"),
icon = shiny::icon("magnifying-glass-chart"), icon = phosphoricons::ph("magnifying-glass", weight = "bold"),
# icon = shiny::icon("magnifying-glass-chart"),
value = "nav_describe", value = "nav_describe",
# id = "navdescribe", # id = "navdescribe",
# bslib::navset_bar( # bslib::navset_bar(
# title = "", # title = "",
bslib::nav_panel( bslib::nav_panel(
title = i18n$t("Characteristics"), title = i18n$t("Characteristics"),
icon = bsicons::bs_icon("table"), icon = phosphoricons::ph("table"),
# icon = bsicons::bs_icon("table"),
bslib::layout_sidebar( bslib::layout_sidebar(
sidebar = bslib::sidebar( sidebar = bslib::sidebar(
shiny::uiOutput(outputId = "data_info_nochar", inline = TRUE), shiny::uiOutput(outputId = "data_info_nochar", inline = TRUE),
@ -410,7 +417,8 @@ ui_elements <- function(selection) {
open = TRUE, open = TRUE,
value = "acc_pan_chars", value = "acc_pan_chars",
title = "Settings", title = "Settings",
icon = bsicons::bs_icon("table"), icon = phosphoricons::ph("table"),
# icon = bsicons::bs_icon("table"),
# vectorSelectInput( # vectorSelectInput(
# inputId = "baseline_theme", # inputId = "baseline_theme",
# selected = "none", # selected = "none",
@ -452,7 +460,8 @@ ui_elements <- function(selection) {
inputId = "act_eval", inputId = "act_eval",
label = i18n$t("Evaluate"), label = i18n$t("Evaluate"),
width = "100%", width = "100%",
icon = shiny::icon("calculator"), icon = phosphoricons::ph("calculator"),
# icon = shiny::icon("calculator"),
disabled = TRUE disabled = TRUE
), ),
shiny::helpText(i18n$t( shiny::helpText(i18n$t(
@ -466,7 +475,8 @@ ui_elements <- function(selection) {
), ),
bslib::nav_panel( bslib::nav_panel(
title = i18n$t("Correlations"), title = i18n$t("Correlations"),
icon = bsicons::bs_icon("bounding-box"), icon = phosphoricons::ph("graph"),
# icon = bsicons::bs_icon("bounding-box"),
bslib::layout_sidebar( bslib::layout_sidebar(
sidebar = bslib::sidebar( sidebar = bslib::sidebar(
# shiny::uiOutput(outputId = "data_info_nochar", inline = TRUE), # shiny::uiOutput(outputId = "data_info_nochar", inline = TRUE),
@ -507,7 +517,8 @@ ui_elements <- function(selection) {
do.call(bslib::nav_panel, c( do.call(bslib::nav_panel, c(
list( list(
title = i18n$t("Missings"), title = i18n$t("Missings"),
icon = bsicons::bs_icon("x-circle") icon = phosphoricons::ph("placeholder")
# icon = bsicons::bs_icon("x-circle")
), ),
data_missings_ui(id = "missingness", validation_ui("validation_mcar")) data_missings_ui(id = "missingness", validation_ui("validation_mcar"))
)) ))
@ -522,7 +533,8 @@ ui_elements <- function(selection) {
c( c(
list( list(
title = i18n$t("Visuals"), title = i18n$t("Visuals"),
icon = shiny::icon("chart-line"), icon = phosphoricons::ph("chart-line", weight = "bold"),
# icon = shiny::icon("chart-line"),
value = "nav_visuals" value = "nav_visuals"
), ),
data_visuals_ui("visuals") data_visuals_ui("visuals")
@ -543,7 +555,8 @@ ui_elements <- function(selection) {
"analyze" = "analyze" =
bslib::nav_panel( bslib::nav_panel(
title = i18n$t("Regression"), title = i18n$t("Regression"),
icon = shiny::icon("calculator"), icon = phosphoricons::ph("calculator", weight = "bold"),
# icon = shiny::icon("calculator"),
value = "nav_analyses", value = "nav_analyses",
do.call(bslib::navset_card_tab, regression_ui("regression")) do.call(bslib::navset_card_tab, regression_ui("regression"))
), ),
@ -555,7 +568,8 @@ ui_elements <- function(selection) {
"download" = "download" =
bslib::nav_panel( bslib::nav_panel(
title = i18n$t("Download"), title = i18n$t("Download"),
icon = shiny::icon("download"), icon = phosphoricons::ph("download-simple", weight = "bold"),
# icon = shiny::icon("download"),
value = "nav_download", value = "nav_download",
shiny::fluidRow( shiny::fluidRow(
shiny::column(width = 2), shiny::column(width = 2),
@ -591,7 +605,8 @@ ui_elements <- function(selection) {
shiny::downloadButton( shiny::downloadButton(
outputId = "report", outputId = "report",
label = "Download report", label = "Download report",
icon = shiny::icon("download") icon = phosphoricons::ph("arrow-fat-down")
# icon = shiny::icon("download")
), ),
shiny::br() shiny::br()
# shiny::helpText("If choosing to output to MS Word, please note, that when opening the document, two errors will pop-up. Choose to repair and choose not to update references. The issue is being worked on. You can always choose LibreOffice instead."), # shiny::helpText("If choosing to output to MS Word, please note, that when opening the document, two errors will pop-up. Choose to repair and choose not to update references. The issue is being worked on. You can always choose LibreOffice instead."),
@ -621,7 +636,8 @@ ui_elements <- function(selection) {
shiny::downloadButton( shiny::downloadButton(
outputId = "data_modified", outputId = "data_modified",
label = "Download data", label = "Download data",
icon = shiny::icon("download") icon = phosphoricons::ph("arrow-fat-down")
# icon = shiny::icon("download")
) )
) )
), ),

View file

@ -44,7 +44,7 @@ update_factor_ui <- function(id) {
actionButton( actionButton(
disabled = TRUE, disabled = TRUE,
inputId = ns("drop_levels"), inputId = ns("drop_levels"),
label = tagList(phosphoricons::ph("sort-ascending"), i18n$t("Drop empty")), label = tagList(phosphoricons::ph("trash"), i18n$t("Drop empty")),
class = "btn-outline-primary mb-3", class = "btn-outline-primary mb-3",
width = "100%" width = "100%"
) )

View file

@ -11,11 +11,11 @@
|collate |en_US.UTF-8 | |collate |en_US.UTF-8 |
|ctype |en_US.UTF-8 | |ctype |en_US.UTF-8 |
|tz |Europe/Copenhagen | |tz |Europe/Copenhagen |
|date |2026-03-31 | |date |2026-04-01 |
|rstudio |2026.01.1+403 Apple Blossom (desktop) | |rstudio |2026.01.1+403 Apple Blossom (desktop) |
|pandoc |3.6.4 @ /opt/homebrew/bin/ (via rmarkdown) | |pandoc |3.6.4 @ /opt/homebrew/bin/ (via rmarkdown) |
|quarto |1.7.30 @ /usr/local/bin/quarto | |quarto |1.7.30 @ /usr/local/bin/quarto |
|FreesearchR |26.3.6.260331 | |FreesearchR |26.4.1.260401 |
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
@ -53,7 +53,6 @@
|colorspace |2.1-2 |2025-09-22 |CRAN (R 4.5.0) | |colorspace |2.1-2 |2025-09-22 |CRAN (R 4.5.0) |
|commonmark |2.0.0 |2025-07-07 |CRAN (R 4.5.0) | |commonmark |2.0.0 |2025-07-07 |CRAN (R 4.5.0) |
|crayon |1.5.3 |2024-06-20 |CRAN (R 4.5.0) | |crayon |1.5.3 |2024-06-20 |CRAN (R 4.5.0) |
|curl |7.0.0 |2025-08-19 |CRAN (R 4.5.0) |
|data.table |1.18.2.1 |2026-01-27 |CRAN (R 4.5.2) | |data.table |1.18.2.1 |2026-01-27 |CRAN (R 4.5.2) |
|datamods |1.5.3 |2024-10-02 |CRAN (R 4.5.0) | |datamods |1.5.3 |2024-10-02 |CRAN (R 4.5.0) |
|datawizard |1.3.0 |2025-10-11 |CRAN (R 4.5.0) | |datawizard |1.3.0 |2025-10-11 |CRAN (R 4.5.0) |
@ -84,7 +83,7 @@
|foreach |1.5.2 |2022-02-02 |CRAN (R 4.5.0) | |foreach |1.5.2 |2022-02-02 |CRAN (R 4.5.0) |
|foreign |0.8-91 |2026-01-29 |CRAN (R 4.5.2) | |foreign |0.8-91 |2026-01-29 |CRAN (R 4.5.2) |
|Formula |1.2-5 |2023-02-24 |CRAN (R 4.5.0) | |Formula |1.2-5 |2023-02-24 |CRAN (R 4.5.0) |
|FreesearchR |26.3.6 |NA |NA | |FreesearchR |26.4.1 |NA |NA |
|fs |1.6.7 |2026-03-06 |CRAN (R 4.5.2) | |fs |1.6.7 |2026-03-06 |CRAN (R 4.5.2) |
|gdtools |0.5.0 |2026-02-09 |CRAN (R 4.5.2) | |gdtools |0.5.0 |2026-02-09 |CRAN (R 4.5.2) |
|generics |0.1.4 |2025-05-09 |CRAN (R 4.5.0) | |generics |0.1.4 |2025-05-09 |CRAN (R 4.5.0) |
@ -107,7 +106,6 @@
|htmltools |0.5.9 |2025-12-04 |CRAN (R 4.5.2) | |htmltools |0.5.9 |2025-12-04 |CRAN (R 4.5.2) |
|htmlwidgets |1.6.4 |2023-12-06 |CRAN (R 4.5.0) | |htmlwidgets |1.6.4 |2023-12-06 |CRAN (R 4.5.0) |
|httpuv |1.6.16 |2025-04-16 |CRAN (R 4.5.0) | |httpuv |1.6.16 |2025-04-16 |CRAN (R 4.5.0) |
|httr |1.4.8 |2026-02-13 |CRAN (R 4.5.2) |
|IDEAFilter |0.2.1 |2025-07-29 |CRAN (R 4.5.0) | |IDEAFilter |0.2.1 |2025-07-29 |CRAN (R 4.5.0) |
|insight |1.4.6 |2026-02-04 |CRAN (R 4.5.2) | |insight |1.4.6 |2026-02-04 |CRAN (R 4.5.2) |
|iterators |1.0.14 |2022-02-05 |CRAN (R 4.5.0) | |iterators |1.0.14 |2022-02-05 |CRAN (R 4.5.0) |
@ -117,7 +115,6 @@
|keyring |1.4.1 |2025-06-15 |CRAN (R 4.5.0) | |keyring |1.4.1 |2025-06-15 |CRAN (R 4.5.0) |
|knitr |1.51 |2025-12-20 |CRAN (R 4.5.2) | |knitr |1.51 |2025-12-20 |CRAN (R 4.5.2) |
|labeling |0.4.3 |2023-08-29 |CRAN (R 4.5.0) | |labeling |0.4.3 |2023-08-29 |CRAN (R 4.5.0) |
|labelled |2.16.0 |2025-10-22 |CRAN (R 4.5.0) |
|later |1.4.8 |2026-03-05 |CRAN (R 4.5.2) | |later |1.4.8 |2026-03-05 |CRAN (R 4.5.2) |
|lattice |0.22-7 |2025-04-02 |CRAN (R 4.5.2) | |lattice |0.22-7 |2025-04-02 |CRAN (R 4.5.2) |
|lifecycle |1.0.5 |2026-01-08 |CRAN (R 4.5.2) | |lifecycle |1.0.5 |2026-01-08 |CRAN (R 4.5.2) |
@ -150,7 +147,7 @@
|pkgload |1.5.0 |2026-02-03 |CRAN (R 4.5.2) | |pkgload |1.5.0 |2026-02-03 |CRAN (R 4.5.2) |
|plyr |1.8.9 |2023-10-02 |CRAN (R 4.5.0) | |plyr |1.8.9 |2023-10-02 |CRAN (R 4.5.0) |
|polyclip |1.10-7 |2024-07-23 |CRAN (R 4.5.0) | |polyclip |1.10-7 |2024-07-23 |CRAN (R 4.5.0) |
|polyglotr |1.7.1 |NA |NA | |polylabelr |1.0.0 |2026-01-19 |CRAN (R 4.5.2) |
|pracma |2.4.6 |2025-10-22 |CRAN (R 4.5.0) | |pracma |2.4.6 |2025-10-22 |CRAN (R 4.5.0) |
|processx |3.8.6 |2025-02-21 |CRAN (R 4.5.0) | |processx |3.8.6 |2025-02-21 |CRAN (R 4.5.0) |
|promises |1.5.0 |2025-11-01 |CRAN (R 4.5.0) | |promises |1.5.0 |2025-11-01 |CRAN (R 4.5.0) |
@ -188,12 +185,10 @@
|rprojroot |2.1.1 |2025-08-26 |CRAN (R 4.5.0) | |rprojroot |2.1.1 |2025-08-26 |CRAN (R 4.5.0) |
|rsconnect |1.7.0 |2025-12-06 |CRAN (R 4.5.2) | |rsconnect |1.7.0 |2025-12-06 |CRAN (R 4.5.2) |
|rstudioapi |0.18.0 |2026-01-16 |CRAN (R 4.5.2) | |rstudioapi |0.18.0 |2026-01-16 |CRAN (R 4.5.2) |
|rvest |1.0.5 |NA |NA |
|S7 |0.2.1 |2025-11-14 |CRAN (R 4.5.2) | |S7 |0.2.1 |2025-11-14 |CRAN (R 4.5.2) |
|sass |0.4.10 |2025-04-11 |CRAN (R 4.5.0) | |sass |0.4.10 |2025-04-11 |CRAN (R 4.5.0) |
|scales |1.4.0 |2025-04-24 |CRAN (R 4.5.0) | |scales |1.4.0 |2025-04-24 |CRAN (R 4.5.0) |
|see |0.13.0 |2026-01-30 |CRAN (R 4.5.2) | |see |0.13.0 |2026-01-30 |CRAN (R 4.5.2) |
|selectr |0.5-1 |NA |NA |
|sessioninfo |1.2.3 |2025-02-05 |CRAN (R 4.5.0) | |sessioninfo |1.2.3 |2025-02-05 |CRAN (R 4.5.0) |
|shiny |1.13.0 |2026-02-20 |CRAN (R 4.5.2) | |shiny |1.13.0 |2026-02-20 |CRAN (R 4.5.2) |
|shiny.i18n |0.3.0 |2023-01-16 |CRAN (R 4.5.0) | |shiny.i18n |0.3.0 |2023-01-16 |CRAN (R 4.5.0) |
@ -214,13 +209,10 @@
|tidyselect |1.2.1 |2024-03-11 |CRAN (R 4.5.0) | |tidyselect |1.2.1 |2024-03-11 |CRAN (R 4.5.0) |
|timechange |0.4.0 |2026-01-29 |CRAN (R 4.5.2) | |timechange |0.4.0 |2026-01-29 |CRAN (R 4.5.2) |
|toastui |0.4.0 |2025-04-03 |CRAN (R 4.5.0) | |toastui |0.4.0 |2025-04-03 |CRAN (R 4.5.0) |
|triebeard |0.4.1 |NA |NA |
|tweenr |2.0.3 |2024-02-26 |CRAN (R 4.5.0) | |tweenr |2.0.3 |2024-02-26 |CRAN (R 4.5.0) |
|twosamples |2.0.1 |2023-06-23 |CRAN (R 4.5.0) | |twosamples |2.0.1 |2023-06-23 |CRAN (R 4.5.0) |
|tzdb |0.5.0 |2025-03-15 |CRAN (R 4.5.0) | |tzdb |0.5.0 |2025-03-15 |CRAN (R 4.5.0) |
|urltools |1.7.3.1 |NA |NA |
|usethis |3.2.1 |2025-09-06 |CRAN (R 4.5.0) | |usethis |3.2.1 |2025-09-06 |CRAN (R 4.5.0) |
|utf8 |1.2.6 |2025-06-08 |CRAN (R 4.5.0) |
|uuid |1.2-2 |2026-01-23 |CRAN (R 4.5.2) | |uuid |1.2-2 |2026-01-23 |CRAN (R 4.5.2) |
|vctrs |0.7.1 |2026-01-23 |CRAN (R 4.5.2) | |vctrs |0.7.1 |2026-01-23 |CRAN (R 4.5.2) |
|viridis |0.6.5 |2024-01-29 |CRAN (R 4.5.0) | |viridis |0.6.5 |2024-01-29 |CRAN (R 4.5.0) |

View file

@ -260,7 +260,6 @@
"FreesearchR is available in multiple languages. To help with translations, please contact us at info@freesearchr.org","FreesearchR er tilgængelig på flere sprog. For at få hjælp med oversættelser, kontakt os venligst på info@freesearchr.org" "FreesearchR is available in multiple languages. To help with translations, please contact us at info@freesearchr.org","FreesearchR er tilgængelig på flere sprog. For at få hjælp med oversættelser, kontakt os venligst på info@freesearchr.org"
"Home","Hjem" "Home","Hjem"
"Start with FreesearchR for basic data evaluation and analysis.","Start med FreesearchR til grundlæggende dataevaluering og -analyse." "Start with FreesearchR for basic data evaluation and analysis.","Start med FreesearchR til grundlæggende dataevaluering og -analyse."
"When you need more advanced tools, you'll be better prepared to use R directly.","Når du har brug for mere avancerede værktøjer, vil du være bedre forberedt på at bruge R direkte."
"(Read more)","(Læs mere)" "(Read more)","(Læs mere)"
"Run the FreesearchR app locally when working with sensitive data.","Kør FreesearchR-appen lokalt, når du arbejder med følsomme data." "Run the FreesearchR app locally when working with sensitive data.","Kør FreesearchR-appen lokalt, når du arbejder med følsomme data."
"Load data from spreadsheets, REDCap servers, or try with sample data. Multiple sources supported for maximum flexibility.","Indlæs data fra regneark, REDCap-servere, eller prøv med eksempeldata. Flere kilder understøttes for maksimal fleksibilitet." "Load data from spreadsheets, REDCap servers, or try with sample data. Multiple sources supported for maximum flexibility.","Indlæs data fra regneark, REDCap-servere, eller prøv med eksempeldata. Flere kilder understøttes for maksimal fleksibilitet."
@ -271,8 +270,6 @@
"When you need more advanced tools, you'll be prepared to use R directly.","Når du har brug for mere avancerede værktøjer, vil du være forberedt på at bruge R direkte." "When you need more advanced tools, you'll be prepared to use R directly.","Når du har brug for mere avancerede værktøjer, vil du være forberedt på at bruge R direkte."
"The app contains a selelct number of features and will guide you through key analyses.","Appen indeholder udvalgte funktioner, og guider dig gennem de vigtigste analyser." "The app contains a selelct number of features and will guide you through key analyses.","Appen indeholder udvalgte funktioner, og guider dig gennem de vigtigste analyser."
"Sort by Levels","Sorter efter niveauer" "Sort by Levels","Sorter efter niveauer"
"Modify factor levels","Ændr kategoriske niveauer"
"Reorder or rename the levels of factor/categorical variables.","Ændr navn eller rækkefølge på kategorisk variabel."
"Maximum number of observations:","Maximale antal observationer:" "Maximum number of observations:","Maximale antal observationer:"
"setting to 0 includes all","angiv 0 for at inkludere alle" "setting to 0 includes all","angiv 0 for at inkludere alle"
"Select a dataset from your environment or sample dataset from a package.","Vælg et datasæt fra din kørende session eller vælg træningsdata." "Select a dataset from your environment or sample dataset from a package.","Vælg et datasæt fra din kørende session eller vælg træningsdata."
@ -321,3 +318,5 @@
"An empty data set was imported. Please review data filter.","An empty data set was imported. Please review data filter." "An empty data set was imported. Please review data filter.","An empty data set was imported. Please review data filter."
"An error was encountered exporting data. Please review data filter.","An error was encountered exporting data. Please review data filter." "An error was encountered exporting data. Please review data filter.","An error was encountered exporting data. Please review data filter."
"Likert diagram","Likert diagram" "Likert diagram","Likert diagram"
"Modify factor","Modify factor"
"Create factor/categorical variable from other variables.","Create factor/categorical variable from other variables."

1 en da
260 FreesearchR is available in multiple languages. To help with translations, please contact us at info@freesearchr.org FreesearchR er tilgængelig på flere sprog. For at få hjælp med oversættelser, kontakt os venligst på info@freesearchr.org
261 Home Hjem
262 Start with FreesearchR for basic data evaluation and analysis. Start med FreesearchR til grundlæggende dataevaluering og -analyse.
When you need more advanced tools, you'll be better prepared to use R directly. Når du har brug for mere avancerede værktøjer, vil du være bedre forberedt på at bruge R direkte.
263 (Read more) (Læs mere)
264 Run the FreesearchR app locally when working with sensitive data. Kør FreesearchR-appen lokalt, når du arbejder med følsomme data.
265 Load data from spreadsheets, REDCap servers, or try with sample data. Multiple sources supported for maximum flexibility. Indlæs data fra regneark, REDCap-servere, eller prøv med eksempeldata. Flere kilder understøttes for maksimal fleksibilitet.
270 When you need more advanced tools, you'll be prepared to use R directly. Når du har brug for mere avancerede værktøjer, vil du være forberedt på at bruge R direkte.
271 The app contains a selelct number of features and will guide you through key analyses. Appen indeholder udvalgte funktioner, og guider dig gennem de vigtigste analyser.
272 Sort by Levels Sorter efter niveauer
Modify factor levels Ændr kategoriske niveauer
Reorder or rename the levels of factor/categorical variables. Ændr navn eller rækkefølge på kategorisk variabel.
273 Maximum number of observations: Maximale antal observationer:
274 setting to 0 includes all angiv 0 for at inkludere alle
275 Select a dataset from your environment or sample dataset from a package. Vælg et datasæt fra din kørende session eller vælg træningsdata.
318 An empty data set was imported. Please review data filter. An empty data set was imported. Please review data filter.
319 An error was encountered exporting data. Please review data filter. An error was encountered exporting data. Please review data filter.
320 Likert diagram Likert diagram
321 Modify factor Modify factor
322 Create factor/categorical variable from other variables. Create factor/categorical variable from other variables.

View file

@ -260,7 +260,6 @@
"FreesearchR is available in multiple languages. To help with translations, please contact us at info@freesearchr.org","FreesearchR inapatikana katika lugha nyingi. Ili kukusaidia na tafsiri, tafadhali wasiliana nasi kwa info@freesearchr.org." "FreesearchR is available in multiple languages. To help with translations, please contact us at info@freesearchr.org","FreesearchR inapatikana katika lugha nyingi. Ili kukusaidia na tafsiri, tafadhali wasiliana nasi kwa info@freesearchr.org."
"Home","Nyumbani" "Home","Nyumbani"
"Start with FreesearchR for basic data evaluation and analysis.","Anza na FreesearchR kwa tathmini na uchambuzi wa data ya msingi." "Start with FreesearchR for basic data evaluation and analysis.","Anza na FreesearchR kwa tathmini na uchambuzi wa data ya msingi."
"When you need more advanced tools, you'll be better prepared to use R directly.","Unapohitaji zana za hali ya juu zaidi, utakuwa tayari zaidi kutumia R moja kwa moja."
"(Read more)","(Soma zaidi)" "(Read more)","(Soma zaidi)"
"Run the FreesearchR app locally when working with sensitive data.","Endesha programu ya FreesearchR ndani ya eneo lako unapofanya kazi na data nyeti." "Run the FreesearchR app locally when working with sensitive data.","Endesha programu ya FreesearchR ndani ya eneo lako unapofanya kazi na data nyeti."
"Load data from spreadsheets, REDCap servers, or try with sample data. Multiple sources supported for maximum flexibility.","Pakia data kutoka kwa lahajedwali, seva za REDCap, au jaribu na data ya sampuli. Vyanzo vingi vinaungwa mkono kwa unyumbufu wa hali ya juu." "Load data from spreadsheets, REDCap servers, or try with sample data. Multiple sources supported for maximum flexibility.","Pakia data kutoka kwa lahajedwali, seva za REDCap, au jaribu na data ya sampuli. Vyanzo vingi vinaungwa mkono kwa unyumbufu wa hali ya juu."
@ -271,8 +270,6 @@
"When you need more advanced tools, you'll be prepared to use R directly.","Unapohitaji zana za hali ya juu zaidi, utakuwa tayari kutumia R moja kwa moja." "When you need more advanced tools, you'll be prepared to use R directly.","Unapohitaji zana za hali ya juu zaidi, utakuwa tayari kutumia R moja kwa moja."
"The app contains a selelct number of features and will guide you through key analyses.","The app contains a selelct number of features and will guide you through key analyses." "The app contains a selelct number of features and will guide you through key analyses.","The app contains a selelct number of features and will guide you through key analyses."
"Sort by Levels","Sort by Levels" "Sort by Levels","Sort by Levels"
"Modify factor levels","Modify factor levels"
"Reorder or rename the levels of factor/categorical variables.","Reorder or rename the levels of factor/categorical variables."
"Maximum number of observations:","Maximum number of observations:" "Maximum number of observations:","Maximum number of observations:"
"setting to 0 includes all","setting to 0 includes all" "setting to 0 includes all","setting to 0 includes all"
"Select a dataset from your environment or sample dataset from a package.","Select a dataset from your environment or sample dataset from a package." "Select a dataset from your environment or sample dataset from a package.","Select a dataset from your environment or sample dataset from a package."
@ -321,3 +318,5 @@
"An empty data set was imported. Please review data filter.","An empty data set was imported. Please review data filter." "An empty data set was imported. Please review data filter.","An empty data set was imported. Please review data filter."
"An error was encountered exporting data. Please review data filter.","An error was encountered exporting data. Please review data filter." "An error was encountered exporting data. Please review data filter.","An error was encountered exporting data. Please review data filter."
"Likert diagram","Likert diagram" "Likert diagram","Likert diagram"
"Modify factor","Modify factor"
"Create factor/categorical variable from other variables.","Create factor/categorical variable from other variables."

1 en sw
260 FreesearchR is available in multiple languages. To help with translations, please contact us at info@freesearchr.org FreesearchR inapatikana katika lugha nyingi. Ili kukusaidia na tafsiri, tafadhali wasiliana nasi kwa info@freesearchr.org.
261 Home Nyumbani
262 Start with FreesearchR for basic data evaluation and analysis. Anza na FreesearchR kwa tathmini na uchambuzi wa data ya msingi.
When you need more advanced tools, you'll be better prepared to use R directly. Unapohitaji zana za hali ya juu zaidi, utakuwa tayari zaidi kutumia R moja kwa moja.
263 (Read more) (Soma zaidi)
264 Run the FreesearchR app locally when working with sensitive data. Endesha programu ya FreesearchR ndani ya eneo lako unapofanya kazi na data nyeti.
265 Load data from spreadsheets, REDCap servers, or try with sample data. Multiple sources supported for maximum flexibility. Pakia data kutoka kwa lahajedwali, seva za REDCap, au jaribu na data ya sampuli. Vyanzo vingi vinaungwa mkono kwa unyumbufu wa hali ya juu.
270 When you need more advanced tools, you'll be prepared to use R directly. Unapohitaji zana za hali ya juu zaidi, utakuwa tayari kutumia R moja kwa moja.
271 The app contains a selelct number of features and will guide you through key analyses. The app contains a selelct number of features and will guide you through key analyses.
272 Sort by Levels Sort by Levels
Modify factor levels Modify factor levels
Reorder or rename the levels of factor/categorical variables. Reorder or rename the levels of factor/categorical variables.
273 Maximum number of observations: Maximum number of observations:
274 setting to 0 includes all setting to 0 includes all
275 Select a dataset from your environment or sample dataset from a package. Select a dataset from your environment or sample dataset from a package.
318 An empty data set was imported. Please review data filter. An empty data set was imported. Please review data filter.
319 An error was encountered exporting data. Please review data filter. An error was encountered exporting data. Please review data filter.
320 Likert diagram Likert diagram
321 Modify factor Modify factor
322 Create factor/categorical variable from other variables. Create factor/categorical variable from other variables.