R Cheat Sheet (6): Subsetting Vectors
本节的主要内容是所指定的条件,从一个矢量中取出想要的元素。 1. 使用正整数矢量索引 对于如下的一个矢量: > x [1] 1.1734365 -0.6219365 NA NA -0.0639205 0.6324963 NA NA -0.3065296 [10] -0.5687445 -0.4932911 NA NA NA NA 0.4575920 NA 1.5744094 [19] NA …
Read more
learn, build, evaluate
本节的主要内容是所指定的条件,从一个矢量中取出想要的元素。 1. 使用正整数矢量索引 对于如下的一个矢量: > x [1] 1.1734365 -0.6219365 NA NA -0.0639205 0.6324963 NA NA -0.3065296 [10] -0.5687445 -0.4932911 NA NA NA NA 0.4575920 NA 1.5744094 [19] NA …
Read more
在统计和数据分析中,丢失的值也具有重要的作用。不能简单地忽视这些丢失的值,而是要仔细分析,查找这些值丢失的原因,以及之它们之间所隐含的模式。 1. NA 在R中,用NA 来表示不可用(not available)或者丢失(missing)的值。任何涉及NA 的运算,结果都是NA ,例如: > x <- c(44, NA, 5, NA) > x * 3 [1] 132 NA 15 …
Read more
R中的矢量(vector)可以分为两类:原子矢量(atomic vector)和列表(list),前者只包含同一种数据类型,后者则包含多种数据类型。根据所包含的数据类型,atomic vector有数字(numeric)、逻辑(logical)、字符(character)、整数(integer)、和复数(complex)等几类。 1. Numeric vector Numeric vect…
Read more
1. 使用“:”运算符生成数字序列 可以使用“:”操作符生成数字序列: > 1:20 [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 > pi:10 [1] 3.141593 4.141593 5.141593 6.141593 7.141593 8.141593 9.141593 > 15:1 [1] 15 14…
Read more
1. 文件相关 1.1. 获取当前工作目录 使用如下命令获取当前工作目录: > getwd() 将当前工作目录保存到old.dir : > old.dir <- getwd() 1.2. 获取当前工作目录下的文件 > list.files() 或 > dir() 1.3. 建立新文件夹 在当前工作目录下建立一个名为“testdir”的文件夹: >…
Read more
R语言入门系列取材于Swirl Courses的R Programming部分(https://github.com/swirldev/swirl_courses),Swirl交互式的特点不便于查找和参考,在这里以Cheat Sheet的形式总结出来,便于随查随用。 1. 计算 R可作为交互式的计算器使用,输入表达式即可求值。 > 5 + 7 [1] 12 2. 赋值 R中的赋值操…
Read more
本文通过实例说明R语言*apply()系列中vapply()和tapply()的用法,所用到的数据同R语言中lapply()和sapply()的用法。在http://archive.ics.uci.edu/ml/machine-learning-databases/flags/flag.data下载到flag.data文件,将其导入R: names <- c("name&quo…
Read more
R语言中提供了一系列*apply()的函数,为数据分析中Split-Apply-Combine的策略提供了简洁方便的实现,这些函数的基本工作流程都是首先将数据按照某种规则划分(split)为较小的几部分,然后对各个部分应用(apply)某些操作,再将结果整合(combine)起来。关于Split-Apply-Combine策略的详细内容,可以参考Hadley Wickham的The Split…
Read more
R语言采用词法作用域(lexical scoping,或称静态作用域static scoping),关于作用域的相关说明可以参考Wiki,这里先举一个例子说明R语言词法作用域的特点。 定义两个函数g() 、f() 以及一个变量z 如下所示: z <- 10 g <- function(x) { x + z } f <- function(y) { z <- 20 g…
Read more