Skip to content

Commit

Permalink
News 2025.02.13-1
Browse files Browse the repository at this point in the history
  • Loading branch information
lgschuck committed Feb 14, 2025
1 parent 6953583 commit 5ed0758
Show file tree
Hide file tree
Showing 12 changed files with 114 additions and 66 deletions.
12 changes: 11 additions & 1 deletion NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ export(p99)
export(pn)
export(spada)
export(suna)
import(data.table)
import(shiny)
importFrom(DescTools,Gmean)
importFrom(DescTools,Hmean)
Expand Down Expand Up @@ -50,8 +49,19 @@ importFrom(bslib,popover)
importFrom(bslib,sidebar)
importFrom(bslib,tooltip)
importFrom(bslib,value_box)
importFrom(data.table,"%between%")
importFrom(data.table,"%notin%")
importFrom(data.table,":=")
importFrom(data.table,.SD)
importFrom(data.table,as.data.table)
importFrom(data.table,between)
importFrom(data.table,copy)
importFrom(data.table,fcase)
importFrom(data.table,fread)
importFrom(data.table,fwrite)
importFrom(data.table,setDT)
importFrom(data.table,setcolorder)
importFrom(data.table,setorderv)
importFrom(dplyr,arrange)
importFrom(dplyr,filter)
importFrom(dplyr,mutate)
Expand Down
18 changes: 14 additions & 4 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,23 @@ editor_options:

3 - Functionalities to detect and treat duplicates

4 - Sample filters for datasets
4 - Functionalities to detect and treat outliers

5 - Functionalities to detect and treat outliers
5 - Inference: t test

6 - Inference: t test
6 - Models: linear model, logistic regression, Kmeans, Trees

7 - Models: linear model, logistic regression, Kmeans, Trees
## 2025.02.13-1

Highlights: Use of selectizeInput with close and clear button for multiple selections

### Improvements

1 - **Convert Cols, Descriptive Stats, Order Cols, Order Rows and Select Cols** modules: now usage of selectizeInput with close and clear button for multiple selections

2 - **utils.R**: filter_rows function now with env = list(var1) in data.table instead of get(var)

3 - **spada.R**: now usage of importFrom for data.table package

## 2025.02.11-1

Expand Down
11 changes: 7 additions & 4 deletions R/convert_cols_module.R
Original file line number Diff line number Diff line change
Expand Up @@ -103,10 +103,11 @@ convert_cols_server <- function(id, input_df, input_df_trigger) {
df$df_active[preview_sample(), ], select = input$vars_sel)

preview_df_temp[
, preview := convert(get(input$vars_sel),
, preview := convert(var1,
type = input$sel_format,
date_format = input$sel_date_formats,
date_origin = input$sel_date_origin)]
date_origin = input$sel_date_origin),
env = list(var1 = input$vars_sel)]
})

output$preview_gt <- render_gt({
Expand All @@ -130,11 +131,13 @@ convert_cols_server <- function(id, input_df, input_df_trigger) {
if(input$vars_sel == '' | input$sel_format == ''){
msg('Choose a variable and a new format')
} else {

df$df_active[, input$vars_sel :=
convert(get(input$vars_sel),
convert(var1,
type = input$sel_format,
date_format = input$sel_date_formats,
date_origin = input$sel_date_origin)]
date_origin = input$sel_date_origin),
env = list(var1 = input$vars_sel)]
msg('Conversion applied')
}

Expand Down
7 changes: 5 additions & 2 deletions R/descriptive_stats_module.R
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,11 @@ descriptive_stats_server <- function(id, df) {

output$parameters <- renderUI({
tagList(
selectInput(ns('sel_var'), 'Variables', var_analysis(),
var_analysis()[1], multiple = T),
selectizeInput(
ns('sel_var'), 'Variables', var_analysis(), var_analysis()[1],
multiple = T,
options = list(plugins = list('remove_button', 'clear_button'))
),
)
})

Expand Down
5 changes: 4 additions & 1 deletion R/order_cols_module.R
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,10 @@ order_cols_server <- function(id, input_df) {
})

output$ui_var_cols <- renderUI(
selectInput(ns('vars_cols'), 'Variables to move', c('', df_names()), multiple = T)
selectizeInput(ns('vars_cols'), 'Variables to move', c('', df_names()),
multiple = T,
options = list(plugins = list('remove_button', 'clear_button'))
)
)

# rest of vars to order
Expand Down
12 changes: 8 additions & 4 deletions R/order_rows_module.R
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,12 @@ order_rows_ui <- function(id) {
card_header('Order Rows', class = 'mini-header'),
card_body(
uiOutput(ns('ui_var_rows')),
selectInput(ns('vars_descending'),
selectizeInput(ns('vars_descending'),
list('Vars in descending order', bs_icon('info-circle')) |>
ttip('If not informed, the order will be Ascending', PLACE = 'right'),
'', multiple = T),
'', multiple = T,
options = list(plugins = list("remove_button", "clear_button"))
),
radioButtons(ns('radio_nas'), "NA's placement",
c('Last' = 'last', 'First' = 'first'),
inline = T),
Expand All @@ -34,12 +36,14 @@ order_rows_server <- function(id, input_df) {
})

output$ui_var_rows <- renderUI(
selectInput(ns('vars_rows'), 'Order by', c('', df_names()), multiple = T)
selectizeInput(ns('vars_rows'), 'Order by', c('', df_names()), multiple = T,
options = list(plugins = list('remove_button', 'clear_button'))
)
)

# vars in descending order
observe({
updateSelectInput(
updateSelectizeInput(
session,
'vars_descending',
label = 'Descending Order',
Expand Down
4 changes: 3 additions & 1 deletion R/select_cols_module.R
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@ select_cols_server <- function(id, input_df) {
})

output$ui_var_sel <- renderUI(
selectInput(ns('vars_sel'), 'Variable', c('', df_names()), multiple = T)
selectizeInput(ns('vars_sel'), 'Variable', c('', df_names()), multiple = T,
options = list(plugins = list('remove_button', 'clear_button'))
)
)

observe({
Expand Down
4 changes: 3 additions & 1 deletion R/spada.R
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
#'
#' @export
#'
#' @import data.table
#' @import shiny
#'
#' @importFrom bsicons bs_icon
Expand All @@ -19,6 +18,9 @@
#' layout_sidebar nav_item nav_menu nav_panel nav_select nav_spacer
#' navset_card_pill page_navbar popover sidebar tooltip value_box
#'
#' @importFrom data.table %between% %notin% .SD := as.data.table between copy
#' fread fwrite setcolorder setDT setorderv

#' @importFrom DescTools Gmean Hmean Kurt Mode Outlier ShapiroFranciaTest
#' Skew ZTest
#'
Expand Down
32 changes: 16 additions & 16 deletions R/utils.R
Original file line number Diff line number Diff line change
Expand Up @@ -218,37 +218,37 @@ convert <- function(x, type, date_format = '%Y-%m-%d',
# filter function -------------------------------------------------------------
filter_rows <- function(df, var, operator, filter_value){
if(operator == '=='){
df[get(var) == filter_value, ]
df[var1 == filter_value, , env = list(var1 = var)]
} else if(operator == '!='){
df[get(var) != filter_value, ]
df[var1 != filter_value, , env = list(var1 = var)]
} else if(operator == '>'){
df[get(var) > filter_value, ]
df[var1 > filter_value, , env = list(var1 = var) ]
} else if(operator == '>='){
df[get(var) >= filter_value, ]
df[var1 >= filter_value, , env = list(var1 = var) ]
} else if(operator == '<'){
df[get(var) < filter_value, ]
df[var1 < filter_value, , env = list(var1 = var) ]
} else if(operator == '<='){
df[get(var) <= filter_value, ]
df[var1 <= filter_value, , env = list(var1 = var) ]
} else if(operator == 'is_na'){
df[is.na(get(var)), ]
df[is.na(var1), , env = list(var1 = var) ]
} else if(operator == 'not_na'){
df[!is.na(get(var)), ]
df[!is.na(var1), , env = list(var1 = var) ]
} else if(operator == 'in'){
df[get(var) %in% filter_value, ]
df[var1 %in% filter_value, , env = list(var1 = var)]
} else if(operator == 'not_in'){
df[!get(var) %in% filter_value, ]
df[!var1 %in% filter_value, , env = list(var1 = var) ]
} else if(operator == 'between'){
df[get(var) %between% filter_value, ]
df[var1 %between% filter_value, , env = list(var1 = var) ]
} else if(operator == 'not_between'){
df[!(get(var) %between% filter_value), ]
df[!(var1 %between% filter_value), , env = list(var1 = var) ]
} else if(operator == 'outlier'){
df[Outlier(get(var), value = F, na.rm = T), ]
df[Outlier(var1, value = F, na.rm = T), , env = list(var1 = var)]
} else if(operator == 'not_outlier'){
df[!Outlier(get(var), value = F, na.rm = T), ]
df[!Outlier(var1, value = F, na.rm = T), , env = list(var1 = var)]
} else if(operator == 'is_true'){
df[get(var) == TRUE, ]
df[var1 == TRUE, , env = list(var1 = var)]
} else if(operator == 'is_false'){
df[get(var) == FALSE, ]
df[var1 == FALSE, , env = list(var1 = var)]
}
}

Expand Down
4 changes: 3 additions & 1 deletion R/zzz.R
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ utils::globalVariables(
'x',
'values',
'results',
'value'
'value',
'var1',
'measure'
)
)
Loading

0 comments on commit 5ed0758

Please sign in to comment.