R in action读书笔记(2)-第五章:高级数据管理(下)

5.4 控制流

? 语句(statement)是一条单独的R语句或一组复合语句(包含在花括号{ } 中的一组R语

句,使用分号分隔);

? 条件(cond)是一条最终被解析为真(TRUE)或假(FALSE)的表达式;

? 表达式(expr)是一条数值或字符串的求值语句;

q    序列(seq)是一个数值或字符串序列。

q  5.4.1重复和循环

q  1.for结构  循环重复地执行一个语句,直到某个变量的值不再包含序列seq中为止

q  语法:for(var in seq) statement

q  2.while结构  循环重复地执行一个语句,知道条件不为真为止

q  语法:while(cond) statement

q  5.4.2条件执行

q  1.if-else结构  控制结构if-else在某个给定条件为真时执行语句。也可以同时在条件为假时执行另外的语句。

q  语法:if (cond) statement

q        If(cond)statement1 else statement2

q  2.ifelse结构 是if-else结构比较紧凑的向量化版本

q  语法:ifelse(cond,statement1,statement2) #cond=TRUE 执行statement1;FALSE时执行statement2

q  3.switch结构 根据一个表达式的值选择语句执行

q  语法:switch(expr,…)

q  5.5用户自编函数

q  结构:myfunction<- function(arg1,arg2,…){

q    statements

q    return

q  }

q  注:一旦开始编写无论任何长度和复杂度的函数,优秀调试工具的重要性都会凸显出来。R中有许多实用的内建调试函数,也有许多用户贡献包提供了额外的功能。关于这个话题,一份优秀的参考资料是DuncanMurdoch整理的“Debugging in R”(http://www.stats.uwo.ca/faculty/murdoch/software/debuggingR)。

q  5.6整合与重组 (aggregate & reshape)

q  5.6.1转置

使用函数t()即可对一个矩阵或数据框进行转置。对于后者,行名将成为变量(列)名。

5.6.2整合数据

在R中使用一个或多个by变量和一个预先定义好的函数来折叠(collapse)数据是比较容易的。

调用格式为:aggregate(x,by,FUN)

其中x是待折叠的数据对象,by是一个变量名组成的列表,这些变量将被去掉以形成新的观测,

而FUN则是用来计算描述性统计量的标量函数,它将被用来计算新观测中的值。

5.6.3reshape包

reshape包是一套重构和整合数据集的绝妙的万能工具。

1、  融合

数据集的融合是将它重构为这样一种格式:每个测量变量独占一行,行中带有要唯一确定这个测量所需的标识符变量。例:

Library(reshape)

Md<-melt(mydata,id=(c(“id”,””time”))))

2、  重铸

cast()函数读取已融合的数据,并使用你提供的公式和一个(可选的)用于整合数据的函数将其重塑。调用格式为:newdata<-cast(md,formula,FUN)

其中的md为已融合的数据,formula描述了想要的最后结果,而FUN是(可选的)数据整合函数。

时间: 2024-10-01 05:01:08

R in action读书笔记(2)-第五章:高级数据管理(下)的相关文章

R in action 读书笔记(1)--第五章:高级数据管理

5.2.1数学函数 函数 描述 abs(x) 绝对值 sqrt(x) 平方根 ceiling(x) 不小于x的最小整数 floor(x) 不大于x的最大整数 trunc(x) 向0的方向截取的X中的整数部分 round(x,digits=n) 将x舍入为指定位的小数 signif(x, digits=n) 将x舍入为指定的有效数字位数 cos(x).sin(x).tan(x) 余弦.正弦和正切 acos(x).asin(x).atan(x) 反余弦.反正弦和反正切 cosh(x).sinh(x)

R in action读书笔记(22)第十六章 高级图形进阶(下)

16.2.4 图形参数 在lattice图形中,lattice函数默认的图形参数包含在一个很大的列表对象中,你可通过trellis.par.get()函数来获取,并用trellis.par.set()函数来修改.show.settings()函数可展示当前的图形参数设置情况.查看当前的默认设置,并将它们存储到一个mysettings列表中: > show.settings() > mysettings<-trellis.par.get() 查看叠加点的默认设置值: > mysett

R in action读书笔记(5)-第七章:基本统计分析

7.1描述性统计分析 > vars<-c("mpg","hp","wt") > head(mtcars[vars])                    mpg  hp    wt Mazda RX4         21.0 110 2.620 Mazda RX4 Wag     21.0 110 2.875 Datsun 710        22.8  93 2.320 Hornet 4 Drive    21.4 11

R in action读书笔记(19)第十四章 主成分和因子分析

第十四章:主成分和因子分析 本章内容 主成分分析 探索性因子分析 其他潜变量模型 主成分分析(PCA)是一种数据降维技巧,它能将大量相关变量转化为一组很少的不相关变量,这些无关变量称为主成分.探索性因子分析(EFA)是一系列用来发现一组变量的潜在结构的方法.它通过寻找一组更小的.潜在的或隐藏的结构来解释已观测到的.显式的变量间的关系. PCA与EFA模型间的区别 主成分(PC1和PC2)是观测变量(X1到X5)的线性组合.形成线性组合的权重都是通过最大化各主成分所解释的方差来获得,同时还要保证个

R in action读书笔记(17)第十二章 重抽样与自助法

12.4 置换检验点评 除coin和lmPerm包外,R还提供了其他可做置换检验的包.perm包能实现coin包中的部分功能,因此可作为coin包所得结果的验证.corrperm包提供了有重复测量的相关性的置换检验. logregperm包提供了Logistic回归的置换检验.另外一个非常重要的包是glmperm,它涵盖了广义线性模型的置换检验依靠基础的抽样分布理论知识,置换检验提供了另外一个十分强大的可选检验思路.对于上面描述的每一种置换检验,我们完全可以在做统计假设检验时不理会正态分布.t分

R in action读书笔记(16)第十二章 重抽样与自助法之 置换检验

第十二章:重抽样与自助法 本章,我们将探究两种应用广泛的依据随机化思想的统计方法:置换检验和自助法 12.1 置换检验 置换检验,也称随机化检验或重随机化检验. 有两种处理条件的实验,十个受试者已经被随机分配到其中一种条件(A或B)中,相应的结果变量(score)也已经被记录.实验结果如下: 如果两种处理方式真的等价,那么分配给观测得分的标签(A处理或B处理)便是任意的.为检验两种处理方式的差异,我们可遵循如下步骤: (1) 与参数方法类似,计算观测数据的t统计量,称为t0: (2) 将10个得

R in action读书笔记(6)-第七章:基本统计分析(下)

7.3相关 相关系数可以用来描述定量变量之间的关系.相关系数的符号(±)表明关系的方向(正相关或负相关),其值的大小表示关系的强弱程度(完全不相关时为0,完全相关时为1).除了基础安装以外,我们还将使用psych和ggm包. 7.3.1 相关的类型 1.Pearson.Spearman和Kendall相关 Pearson积差相关系数衡量了两个定量变量之间的线性相关程度.Spearman等级相关系数则衡 量分级定序变量之间的相关程度.Kendall’s Tau相关系数也是一种非参数的等级相关度量.

R in action读书笔记(13)第十章 功效分析

功效分析 功效分析可以帮助在给定置信度的情况下,判断检测到给定效应值时所需的样本量.反过来,它也可以帮助你在给定置信度水平情况下,计算在某样本量内能检测到给定效应值的概率.如果概率低得难以接受,修改或者放弃这个实验将是一个明智的选择. 10.1假设检验速览 在研究过程时,研究者通常关注四个量:样本大小.显著性水平.功效和效应值.样本大小指的是实验设计中每种条件/组中观测的数目.显著性水平(也称为alpha)由I型错误的概率来定义.也可以把它看做是发现效应不发生的概率.功效通过1减去II型错误的概

R in action读书笔记(21)第十六章 高级图形进阶(上)

16.1 R 中的四种图形系统 基础图形函数可自动调用,而grid和lattice函数的调用必须要加载相应的包(如library(lattice)).要调用ggplot2函数需下载并安装该包(install.packages("ggplot2")),第一次使用前还要进行加载(library(ggplot2)). 16.2 lattice 包 lattice包为单变量和多变量数据的可视化提供了一个全面的图形系统.在一个或多个其他变量的条件下,栅栏图形展示某个变量的分布或与其他变量间的关系