# ✅ R语言自定义函数超简单教程!手把手教你写🔥 ## 🌟基本结构是这样滴👇 r 函数名 <- function(参数列表) { # 这里是执行的代码块 return(结果) # 可选的返回值 } ### 🌰举个栗子🥜:加法函数 r add_numbers <- function(a, b) { sum <- a + b # 计算两数之和 print(paste("结果是:", sum)) # 打印友好提示 return(sum) # 返还最终数值 } # 调用方式👉🏻 add_numbers(3,5) # 输出"结果是:8"并返回8 ## 💡进阶技巧大放送✨ 1️⃣ **默认参数值**(超实用!) r greet <- function(name="访客大人", times=1) { for(i in 1:times){ cat("欢迎光临,", name, "!\n") } } # 只写greet()会用默认值 → 自动问候"访客大人"1次 2️⃣ **多行返回神器***(批量出结果必备) r stats_summary <- function(x) { c(mean=mean(x), median=median(x), max=max(x)) } # 输入数值向量就能一次性get所有统计量啦! 3️⃣ **作用域小心机⛔️** 记得把内部变量都用`<<-`赋值才能保存到全局环境哦~普通箭头`<-`只在函数内有效哒! 4️⃣ **文档注释规范📝**(别人看得懂才是真的好代码) r #' 根据半径计算圆面积 #' @param r 数值型半径 >0 #' @return 面积值 circle_area <- function(r) {pi*r^2} ## ⚠️常见翻车现场🚨 ▫️忘记加括号导致立即执行而不是定义函数❌ ▫️参数名重复引发诡异bug👻 ▫️该分号时分号!否则可能连着下一行一起执行…🤦🏻♀️ ## 🎉实战测试题🔍 试着写出这个功能的函数:给定姓名和年龄,返回格式化字符串如“张三今年25岁啦!” (答案示例在评论区💬)