r语言html函数,【R语言】《R语言初学者指南》:函数、自定义函数、循环
《R语言初学者指南》—简单函数、自定义函数、循环
一、简单函数
table(A):数据透视,A为向量,同类计数
table(A,B):数据透视,A,二维计数
apply(data,1/2,function):data为矩阵或数据框,1为按行拆分计算,2为按列拆分计算。输出结果跟函数有关,如函数每次返回一个值,则最终apply返回向量;如函数每次返回一个向量,则最终apply返回矩阵。
tapply(X=A,Index=B,Fun=C):
数据透视,以B为纲对A进行各种计算。A、B为向量,C为计算方法如length、mean、sum。
sapply(X,function):apply(,2,),X必须为数据框
lapply(X,function):应用于list
summary():对象可以是向量、矩阵、数据框,返回每列最小值、第一四分位数、中位数、平均值、第三四分位数、最大值。
colsums(,na.rm=T),rowsums()
Veg
tapply(Veg$R,Veg$Transect,mean)
## 1 2 3 4 5 6 7
## 7.571429 6.142857 10.375000 9.250000 12.375000 11.500000 10.500000
## 8
## 11.833333
二、循环
先写一个元素的实现代码,再替换通用部分
案例:针对每个鸟巢(27个鸟巢)绘制一个通同胞协商对到达时间的jpeg格式的散点图。
1.载入数据
setwd("C:\\Rstudio\\RBook")
Owl
str(Owl)
## 'data.frame': 599 obs. of 7 variables:
## $ Nest : Factor w/ 27 levels "AutavauxTV","Bochet",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ FoodTreatment : Factor w/ 2 levels "Deprived","Satiated": 1 2 1 1 1 1 1 2 1 2 ...
## $ SexParent : Factor w/ 2 levels "Female","Male": 2 2 2 2 2 2 2 1 2 1 ...
## $ ArrivalTime : num 22.2 22.4 22.5 22.6 22.6 ...
## $ SiblingNegotiation: int 4 0 2 2 2 2 18 4 18 0 ...
## $ BroodSize : int 5 5 5 5 5 5 5 5 5 5 ...
## $ NegPerChick : num 0.8 0 0.4 0.4 0.4 0.4 3.6 0.8 3.6 0 ...
2.提取一个鸟巢数据实现
unique(Owl$Nest)
## [1] AutavauxTV Bochet Champmartin ChEsard
## [5] Chevroux CorcellesFavres Etrabloz Forel
## [9] Franex GDLV Gletterens Henniez
## [13] Jeuss LesPlanches Lucens Lully
## [17] Marnand Moutet Murist Oleyes
## [21] Payerne Rueyes Seiry SEvaz
## [25] StAubin Trey Yvonnand
## 27 Levels: AutavauxTV Bochet Champmartin ChEsard ... Yvonnand
OwlAut
jpeg("C:/Rstudio/RBook/Pic/AutavauxTV.jpg")
plot(x=OwlAut$ArrivalTime,y=OwlAut$NegPerChick,xlab="Arrival Time",ylab="Negotiation behavior",main="AutavauxTV")
dev.off()
## png
## 2
3.设计通用代码
AllNest
for(i in 1:length(AllNest)){
NestName
path
NestData
jpeg(path)
plot(x=NestData$ArrivalTime,y=NestData$NegPerChick,xlab="Arrival Time",ylab="Negotiation behavior",main=NestName)
dev.off()
print(i)
}
三、自定义函数
分为一个数据参数,多个数据参数(位置匹配),以函数为参数(分功能实现代码,再用if合并)等等。
案例1:函数输入数据框,计算每个变量含有缺失值的个数。
NaPerVarible
D1
colSums(D1)
}
案例2:函数确定每个变量中有多少个0
ZeroPerVarible
D1
colSums(D1,na.rm=T)
}
案例3:具有多个参数的函数
VaribleInfo
if(Choice1=="Zeros"){D1
if(Choice1=="Na"){D1
if(Choice1!="Zeros"& Choice1!="Na"){
print("Type 'Zeros' or 'Na'")
}else{colsums(D1, na.rm=T)}
}
r语言html函数,【R语言】《R语言初学者指南》:函数、自定义函数、循环相关推荐
- R语言使用caret包的confusionMatrix函数计算混淆矩阵、使用编写的自定义函数可视化混淆矩阵(confusion matrix)
R语言使用caret包的confusionMatrix函数计算混淆矩阵.使用编写的自定义函数可视化混淆矩阵(confusion matrix) 目录
- mysql自定义函数的分号_MySQL 第八篇:自定义函数、存储过程、游标-阿里云开发者社区...
我把MySQL的内容整理成9篇博客,学完这9篇博客虽不能说能成为大神,但是应付一般中小企业的开发已经足够了,有疑问或建议的欢迎留言讨论. 自定义函数 一.函数的概念与定义 1.理解函数 函数可以看作是 ...
- python定义函数prime判断是否是素数_用自定义函数判断素数 用C语言编写自定义函数prime(int x),判断x是否为素数?...
用C语言编写自定义函数prime(int x),判断x是否为素数? int prime(int x) { int i,k k=(int)sqrt( (double)x ) for(i=2i&l ...
- 【C语言】函数基本知识详细讲解(库函数、自定义函数、参数、函数的套用.....
接着上次的数组的基本知识,让我们来简单了解C语言里的函数. 目录 函数的定义 库函数 自定义函数 函数的参数 函数的调用: 函数的嵌套调用和链式访问 函数的声明和定义 函数递归. 总结 函数的定义 ...
- c语言程序设计 第七章函数,《C语言程序设计》第七章随堂练习:自定义函数
题目:创建一个C语言控制台程序,除了main函数外,自定义两个被调用的函数,并要求至少有一个函数包含有参数. 解答: 首先我们要了解,函数包含哪些组成结构,有四个部分,分别是:函数类型.函数名称.函数 ...
- python定义函数的组成部分有_Python基础11- 函数之自定义函数
自定义函数语法结构: def fun1([x],[y],....): 语句1 语句2 使用def语句来定义函数,在def后依次写出函数名.小括号.参数(可无).冒号,然后缩进写函数体 1.无参函数: ...
- oracle十进制函数语法,Oracle 十进制、二进制互相转换自定义函数
Oracle 十进制.二进制相互转换自定义函数 create or replace function number_2_bit(v_num number) return varchar is v_rt ...
- python万年历函数输入某一年某一月_Python自定义函数计算给定日期是该年第几天的方法示例...
本文实例讲述了python自定义函数计算给定日期是该年第几天的方法.分享给大家供大家参考,具体如下: 写一个函数,计算给定日期是该年的第几天. 满足闰年的条件: 闰年是公历中的名词,能被4整除但不能被 ...
- python自定义函数返回值_第八讲 python自定义函数返回值
注意自定义函数:统一文件内函数名称不能相同. 单返回值 语法结构: def function_name([para1,para2...]): code... code... ... return va ...
- matlab调用函数为什么会有多个输出,matlab自定义函数,可以输出多个数组么?
www.mh456.com防采集. 可以输出多个2113是不是5261因为你在函数中没有4102给输1653出变量赋值?专给一个例子属function[a,b,c]=test1(input)ifinp ...
最新文章
- vmware响应时间过长_性能调优高并发下如何缩短响应时间
- DataGuard physical standby创建与维护
- win10 无法安装/启用 .net framework 3.5 的一种解决方案
- 修复虚拟磁盘LVM表
- access数据库为什么一直登陆_为什么要养成用Access数据库保存数据的习惯?
- maven+springmvc下载excle文件——ie8可用
- docker-ce安装
- 大学生职业生涯规划计划与路径_我校举办2020年大学生职业生涯规划大赛
- Druid连接池链接mysql错误提示:create connection SQLException, url: jdbc:mysql://127.0.0.1:3306/bank, errorCode
- AdaBoost(1)
- Android混淆规则
- Smart原则和PDCA循环
- 邓俊辉 数据结构 第二章 向量 笔记
- vue引入echarts
- Wireshark分析流量包案例
- 计算机切换器鼠标反应慢,kvm切换器故障操作解决方法详解
- 360视频:CMP和ACP投影
- 苹果机型中最具经典的三款机型
- 三维点云数据集汇总(分类+检测+识别)
- 2022年度回忆录我在 CSDN 的这一年