Hi All,
Need help in updating a function as we have a function for a matrix calculation , The Function is working but not giving the required output.
The Input Data is a matrix table of values.
We have Sub Function That is iterating in main function.
sub function
“multi<-function(dataset,var_list,var_name){
data<-dataset[unlist(var_list)]
total_column<-NA^!rowSums(!is.na(data[,1:ncol(data)]))
lst1 <- lapply(names(data[,1:ncol(data)]), function(x) freq(data,x))
lst2 <- lst1[!sapply(lst1, is.null)]
tab<-Reduce(rbind,lst2) %>% sort_desc(Freq)
tab<-tab%>%
mutate(Var1=as.character(Var1),
Freq=as.numeric(Freq),
N=sum(total_column,na.rm = TRUE))%>%
mutate(UQ(rlang::sym(var_name)) := Freq*100/N)%>%
select(Var1,!!var_name,N)%>%
dplyr::rename(" "=Var1)
tab[,2]<- mask_m(tab[,2],tab[,3])
tab[,2]<-ifelse(tab[,2]=="--","--", paste0(round(tab[,2],digits = 1),"%"))
tab<-rbind(c("N",sum(total_column,na.rm = TRUE)),tab[,1:2])
tab
}”
Main Function
"tab_MA_row<-function(data,var_list=list(var_list1,var_list2),var_name_list, footer){
table_list<-list()
for (i in 1:length(var_list)) {
table_list[[i]]<-multi(dat,var_list[i],var_name_list[i])}
t1<-Reduce(merge,table_list)
t2<-rbind(
t1[nrow(t1),],t1[-nrow(t1),])
}”
please refer to attached outcome and requirement....
for more details please let me know....