第一章 欢迎来到R语言基础
1-1 课程介绍
数据结构
数据操作
- 构建子集
- 重要函数的使用
第二章 R语言的数据结构
目录
- 2-1 对象和属性
- 2-2 向量
- 2-3 矩阵和数组
- 2-4 列表
- 2-5 factor
- 2-6 缺失值
- 2-7 数据框
- 2-8 日期与时间
- 2-9 小结
2-1 对象和属性
R中对象的5中基本数据类型(Classes of Objects):
- 字符(character)
- 数值(numeric:real numbers)
- 整数(integer)
- 复数(complex):1+2i
- 逻辑(logical:True/False)
在RStudio中的讲解:
对象的属性(attribute):
- 名称(name)
- 维度(dimensions:matrix,array)
- 类型(class)
- 长度(length)
这些将在数据结构中,详细的介绍。
2-2 向量
向量(Vector)是R中最常用,也是最重要的一种数据结构。在上一节中介绍的5中数据类型,他们只能包含一个元素,而向量是一种可以包含多个元素的数据结构,但是这些多个元素的数据类型必须一样。
在RStudio中的讲解:
新建R文件:
R中向量的创建和赋值:
为向量中每个元素添加名称属性:
2-3 矩阵和数组
矩阵(Matrix):向量+维度属性(整数向量:nrow,ncol)
创建矩阵:
查看矩阵的维度和属性:
使用“矩阵=向量+维度”创建一个矩阵:
拼接矩阵,按行拼接:
按列拼接:
数组(array):与矩阵类似,但是维度可以大于2
创建二维数组:
创建三维数组:
在三维数组中,指定维度dim=c(2, 3, 4)。输出数组x1时,则是有4个2×3的二维数组,而且数组中值的填充则是按照,每一个2×3二维数组的先后顺序进行列的填充,即填充满第一个二维数组后,再填充第二个,所以得到如上的输出结果。
2-4 列表
列表(list):可以包含不同类型的对象。前面介绍的数据类型中,矩阵和数组都是可以包含多个元素,但元素的类型是相同的,而列表则可以包含多个不同类型的对象。
创建列表:
2-5 factor
因子(factor):分子时用来处理分类数据的,而分类数据又可以分为有序分类数据和无序分类数据。可以将因子理解为:整数向量+标签(label)(优于整数向量)。例如可以将Male/Female用1/2来表示,其中1/2就是整数向量,而使用因子表示的时候,就可以对1/2进行描述,以便知道1/2所表示的含义。因子通常可以运用于线性模型和一般线性模型。
创建因子:
2-6 缺失值
缺失值(missing value):有两种表示方式NA/NaN,其中NaN属于NA, NA不属于NaN。原因是,NaN一般用来表示数字的缺失值,而NA可以表示的缺失值的类型范围更广。
NA有类型属性:integer NA,character NA等
判断向量中是否有缺失值的方法:is.na()/is.nan()
2-7 数据框
数据框(data frame):用于存储表格数据(tabular data)。可以将数据框视为一种列表类型,其中各个元素的长度相同。
- 将列表中的每一个元素对应于数据框中的每一列数据。并且每一列数据的长度是一样的。
- 列表中的每一个元素的长度代表数据框中的行数。
- 数据框中的元素类型可以不同。
创建数据框:
2-8 日期与时间
日期与时间(date,time):日期的类型为date,其内部存储的是当前日期距离1970-01-01的天数
日期,输出当前日期:
将任意日期存储为Data类型:
日期间的运算:
时间
时间的数据结构有两个类型:POSIXct/POSIXlt,他们都表示距离1970-01-01的秒数。
- POSIXct:整数,常用于存入数据框
- POSIXlt:列表,还包含星期、年、月、日等信息
输出当前时间:
将POSIXct类型转换为POSIXlt类型:
将任意时间转换成Time数据类型:
2-9 小结
5种对象类型:
- character, numeric, integer, complex, logical
数据结构间的相互关系: