如何从头开始创建Summary()函数?

时间:2019-01-19 18:42:41

标签: r

我想创建一个与summary()非常相似的“已定义用户功能”,只是为了练习,但这给了我错误消息。有人可以帮助我吗?

quick_view < - function (df) {
    n == 0
    while (n <= 1) {
        quantile < -quantile(df, n)
        n < -n + 0.25
        if (n == 0) {
            sprintf("Min: %s", quantile)
        } elseif(n == 0.25){
            sprintf("1Q: %s", quantile)
        } elseif(n == 0.5){
            sprintf("2Q: %s", quantile)
        } elseif(n == 0.75){
            sprintf("3Q: %s", quantile)
        }else {
            sprintf("Max: %s", quantile)
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您快到了。无需在每个while语句中放入n <- n + 0.25。最后就足够了。

quick_view<- function(df){
  n <- 0
  while (n<=1){
    quantiles <- quantile(df,n)

    if (n==0){
      print(sprintf("Min: %s", quantiles))
    } else if(n==0.25){
      print(sprintf("1Q: %s",quantiles))
    } else if(n==0.5){
      print(sprintf("2Q: %s",quantiles))
    } else if(n==0.75){
      print(sprintf("3Q: %s",quantiles))
    } else{
      print(sprintf("Max: %s",quantiles))
    }
    n <- n + 0.25
  } 
}

quick_view(1:10)
[1] "Min: 1"
[1] "1Q: 3.25"
[1] "2Q: 5.5"
[1] "3Q: 7.75"
[1] "Max: 10"