首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用expss类输出绑定两个表

用expss类输出绑定两个表
EN

Stack Overflow用户
提问于 2022-04-10 17:15:24
回答 1查看 35关注 0票数 1

我试图在expss中绑定两个表,如果num == TRUE,那么返回(list(df1,df2))应该是一个接一个的表绑定,在它们之间有一个空白的行。

此外,格式也应该是与输出相同的EXPSS。

代码语言:javascript
复制
library(expss)
mtcars = apply_labels(mtcars,
                      mpg = "Miles/(US) gallon",
                      cyl = "Number of cylinders",
                      disp = "Displacement (cu.in.)",
                      hp = "Gross horsepower",
                      drat = "Rear axle ratio",
                      wt = "Weight (1000 lbs)",
                      qsec = "1/4 mile time",
                      vs = "Engine",
                      vs = c("V-engine" = 0,
                             "Straight engine" = 1),
                      am = "Transmission",
                      am = c("Automatic" = 0,
                             "Manual"=1),
                      gear = "Number of forward gears",
                      carb = "Number of carburetors"
)


banner <-  with(mtcars,list(total(), am))

var <- "mpg"
data = mtcars


func1 <- function(data,var,banner,num){

if (num==TRUE) {
 
df1 <- expss::cro_cpct(data[[var]],banner)
df2 <- cross_fun(data,
          data[[var]],
          col_vars = banner,
          row_vars = vs,
          fun = combine_functions(Mean = mean,
                                  'Std. dev.' = sd,
                                  'Valid N' = valid_n))
      return(list(df1, df2))
}else{
  df1 <- expss::cro_cpct(data[[var]],banner)
  df1
             }


}

t1 <- func1(mtcars,"mpg",banner,num=FALSE)
EN

回答 1

Stack Overflow用户

发布于 2022-04-11 20:28:26

add_rows应该能工作:

代码语言:javascript
复制
func1 <- function(data,var,banner,num){
    
    if (num==TRUE) {
        
        df1 <- expss::cro_cpct(data[[var]],banner)
        df2 <- cross_fun(data,
                         data[[var]],
                         col_vars = banner,
                         row_vars = vs,
                         fun = combine_functions(Mean = mean,
                                                 'Std. dev.' = sd,
                                                 'Valid N' = valid_n))
        res = add_rows(
            df1,
            data.frame(row_labels = ""),
            df2
        )
        return(res)
    }else{
        df1 <- expss::cro_cpct(data[[var]],banner)
        df1
    }
    
    
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71818888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档