欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > R语言统计分析——自编函数

R语言统计分析——自编函数

2024/11/30 6:40:53 来源:https://blog.csdn.net/maizeman126/article/details/140748248  浏览:    关键词:R语言统计分析——自编函数

参考资料:R语言统计分析【第2版】

        一个函数的结构大致如此:

        myfunction<-function(arg1,arg2,...){

                statements

                return(object)

        }

函数中的对象只在函数内部使用。返回对象的数据类型是任意的。

        假设我们要编写一个函数,用来计算数据对象的集中趋势和离散程度。要求此函数可以选择性地给出参数统计量(均值和标准差)和非参数统计量(中位数和绝对中位差),结果以一个含名称列表的形式给出。

# 构建自定义函数
mystats<-function(x,parametric=TRUE,print=FALSE){if (parametric){center<-mean(x);spread<-sd(x)}else{center<-median(x);spread<-mad(x)}if (print & parametric){cat("Mean=",center,"\n","SD=",spread,"\n")} else if (print & !parametric){cat("Median=",center,"\n","MAD=",spread,"\n")}result<-list(center=center,spread=spread)return(result)
}
# 设置随机种子
set.seed(1234)
# 取随机数
x<-rnorm(500)
# 执行自定义函数
y<-mystats(x)
y$center
y$spready<-mystats(x,parametric=FALSE,print=TRUE)

        另一个自编函数是switch结构的。此函数可以让用户选择输出当天日期的格式。在函数声明中位参数指定的值作为默认值。在此函数中,如果未指定type,则long将作为默认的日期格式。

mydate<-function(type='long'){switch(type,long=format(Sys.time(),"%A %B %d %Y"),short=format(Sys.time(),'%m-%d-%y'),cat(type,"is not a recognized type\n"))
}
mydate("long")
mydate()
mydate("short")
mydate("medium")

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com