第二关 初识R语言
●数据结构
●因子
●数据的输入
1 数据结构
不同的行业对数据集的叫法不同,在r中,我们把列称为观测,行称为变量。在R中,有许多存储数据的对象(obiect)类型,包括标量,向量,矩阵,数组,数据框和列表,它们之间的关系见如下示意图:
1.1向量
可以是字符型,数值型或逻辑型的一维数组,创建函数为:
C()
示例:
如果要访问其中的的”王五”,可输:
向量长度:
name就是一组字符型向量,要注意的是,向量中的元素类型必须一致。
1.2矩阵
矩阵是一个二维数组,其中的元素类型也必须一致,创建函数为:
matrix()
举例:
mymatrix是一个2行2列矩阵,byrow=T表示按行填写。
当要访问矩阵中的某个元素是,可以利用下标来做到这一点,[x,]表示访问第x行,[,y]表示访问第y列,[x,y]表示访问第x行第y列元素。
1.3数组
数组与矩阵类似,但是维度可以大于2,是矩阵的自然推广,创建函数为:
array()
数组中的数据也只能拥有一种模式,从数组中选取元素的方式与矩阵相同。
1.4数据框
由于不同的列可以包含不同模式(数值型,字符型等)的数据,数据框的概念较矩阵来说更为一般。数据框是R中常处理的数据结构。创建函数为:
data.frame()
示例:
如果要选取数据框中的元素除了前文介绍的下标以外,还可以有用“$”
举例:
当要对数据框内部的数据执行函数的时候,可以用到的函数是;
attach(),detch(),和with()
Attach(),detch()和with()都可以达到处理数据框内部元素的目的,不过个人感觉with更简单好用一些:
{}之间的语句,都只针对数据框"newdata"执行,如果只有一条语句,那么{}也可以省略。
1.5列表
列表(list)是R中为复杂的一种,可以包含若干向量,矩阵,数据框,甚至其他列表组合,(简直就像大饼,可以卷一切:))
Mylist<-list()
2 因子
对因子的学习让我充满困惑,所以单列出来谈一下。
变量可过归结为名义型,有序型或连续型变量。其中名义型变量和有序型变量在R中称为因子,因子在R中非常重要,因为它决定了数据分析方式以及如何进行视觉呈现。对于数值型变量可以用levels和labels参数来编码成因子:
对应的,1表示male,2表示female.这里levels代表变量的实际值,labels表示包含了理想值标签的字符型向量。
3 数据的输入
3.1使用键盘输入数据:
edit()
示例:
3.2Excel表格的输入
简便的方法是把表格导出为一个逗号分隔符文件(csv),然后使用read.csv()来导入数据:
小结:本关内容非常基本,数据的导入,数据框内元素的选择都会成为以后在R中常面对的运算。孰料掌握会为以后的学习打好基础。还是一句话,多练,熟能生巧对于小白来讲就是捷径。
不积跬步,无以至千里;不积小流,无以成江海
相关文章