一、循环与控制

循环:

for(i in 1:10) print("hello world")

i<-10

while(i>0){

print(i);

i<-i-1;

}

控制

if()

if() else

ifelse(判断,true,false)

switch(type,。。。)

二、用户自定义函数

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) 生成符合正态分布500个元素
y <- mystats(x)
y <- mystats(x, parametric=FALSE, print=TRUE)

下面是一个关于switch函数的例子

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("short")
mydate()
mydate("medium")

R语言中如何编写自己的函数初步入门相关推荐

  1. R语言中使用非凸惩罚函数回归(SCAD、MCP)分析前列腺数据

    原文链接:http://tecdat.cn/?p=20828 本文使用lasso或非凸惩罚拟合线性回归,GLM和Cox回归模型的正则化,特别是_最小_最_大凹_度_惩罚_函数_(MCP)_和光滑切片绝 ...

  2. 在R语言中进行局部多项式回归拟合(LOESS)

    局部多项式回归拟合是对两维散点图进行平滑的常用方法,它结合了传统线性回归的简洁性和非线性回归的灵活性.当要估计某个响应变量值时,先从其预测变量附近取一个数据子集,然后对该子集进行线性回归或二次回归,回 ...

  3. R语言中作图的一些基本代码

    文章目录 利用par()函数设置公共绘图参数(重点) 在已有的plot图像中如何添加线条 做出三维表面图 控制坐标轴显示的区域 在指定坐标中做注释 标题和xy的标签 标题中的字体 通过title()对 ...

  4. c语言比率分布 函数 rate(m),R语言中统计分布和模拟_R语言培训

    R语言中统计分布和模拟 前言 很多应用都需要随机数.像interlink connection,密码系统.视频游戏.人工智能.优化.问题的初始条件,金融等都需要生成随机数.但实际上目前我们并没有&qu ...

  5. R语言ggplot2可视化:使用geom_line函数将dataframe中数据可视化为时间序列(或折线图)(Time Series Plot From a Data Frame)、添加标题、副标题

    R语言ggplot2可视化:使用geom_line函数将dataframe中数据可视化为时间序列(或折线图)(Time Series Plot From a Data Frame).添加标题.副标题. ...

  6. R语言中使用pkgbuild::find_rtools查看是否有Rtools、使用Sys.which函数查看make是否存在、如果没有则安装、使用writeLines函数绑定R和Rtools

    R语言中使用pkgbuild::find_rtools(debug = TRUE)查看是否有Rtools.使用Sys.which函数查看make是否存在.如果没有则安装Rtools.使用writeLi ...

  7. R语言广义线性模型函数GLM、glm函数构建泊松回归模型、模型中存在过离散(Overdispersion)、则将连接函数从possion函数替换为quasipoisson函数重新构建泊松回归模型

    R语言广义线性模型函数GLM.glm函数构建泊松回归模型(Poisson regression).模型中存在过离散(Overdispersion).则将连接函数从possion函数替换为quasipo ...

  8. R语言可视化、编写自定义函数可视化水平排序条形图(horizontal bar plot)、自定义图像布局模仿经济学人杂志可视化效果、右侧添加标签数值图像方框、自定义背景色、水平条形图中间线条等

    R语言可视化.编写自定义函数可视化水平排序条形图(horizontal bar plot).自定义图像布局模仿经济学人杂志可视化效果.右侧添加标签数值图像方框.自定义背景色.水平条形图中间线条.网格线 ...

  9. R语言使用scatterplot3d包的scatterplot3d函数可视化3D散点图(3D scatter plots)、在3D散点图中添加垂直线和数据点描影、3D图中添加回归平面

    R语言使用scatterplot3d包的scatterplot3d函数可视化3D散点图(3D scatter plots).在3D散点图中添加垂直线和数据点描影.3D图中添加回归平面(overlaid ...

最新文章

  1. Docker背后的内核知识:命名空间资源隔离
  2. 解决Moodle日历乱码的最佳方案
  3. 安卓最好用的浏览器_iOS最好用的浏览器,没有之一!
  4. [HEOI2016/TJOI2016]求和
  5. 即时通讯音视频开发(六):如何开始音频编解码技术的学习
  6. 简单扩展shiro 实现NOT、AND、OR权限验证(支持复杂一点的表达式)
  7. 字符串_月隐学python第7课
  8. 剑指Offer 斐波那契数列
  9. [Leetcode][第题][JAVA][两个数组的交集 II1][双指针][HashMap]
  10. ISOLINUX: A bootloader for Linux using ISO 9660/El Torito CD-ROMs
  11. 怎么设置电脑屏幕一直亮着_电脑屏幕分辨率的调节方法
  12. leetcode------Binary Tree Level Order Traversal II
  13. MODFLOW Flex、GMS、FEFLOW、HYDRUS实践应用
  14. EnableQ,细腻让其与众不同
  15. BZOJ5369-[Pkusc2018]最大前缀和
  16. 代码设置margintop_js获取css属性,更改margin-top属性,给每个a标签的margin-top属性在原基础上 +5px...
  17. Qt下绘制PPI扫描的雷达图
  18. C语言蓝桥杯刷题:数字三角形
  19. Win11宽带连接错误651如何解决?
  20. Go context.Context的学习

热门文章

  1. 商务翻译证,高级商务翻译证
  2. 无用功——是不是到处可见?
  3. 日常无用功之windows把整个D盘改成了桌面还原
  4. 基于STM32F4的心电监护仪
  5. 知名食品品牌全案咨询公司之塔望整体介绍
  6. 1032. 挖掘机技术哪家强
  7. oracle设置ip白名单
  8. UE_Visibility Buffer Deferred Material
  9. LCHub 1月低代码平台排行榜出炉:宜搭遥遥领先微搭低代码
  10. apt-get -yqq install 与apt-get install的区别