一、矩阵

所有元素的数据类型必须一致

构建矩阵的两种方法:行数和列数的分配必须满足分配条件

方法一

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据

 

 

方法二

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_02

 

 

创建矩阵时,省略行或者列参数,系统会自动分配矩阵

省略列参数

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据类型_03

 

 

省略行参数

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_04

 

 

矩阵按行排列

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_05

 

 

 

按列排列

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据_06

 

 

矩阵加法:对应数字相加、减、乘、除

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_07

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_08

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_字符串_09

 

 

diag函数:矩阵取对角线数字

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据类型_10

 

 

t()将矩阵进行转置

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_11

 

 

 二、列表

用list定义列表

列表里含多个元素时,用list[1]和list$first得到的结果是一样的

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据_12

 

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_13

 

 

用list[]语句查看多个列表元素时,必须写成list[c(1,2)]

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_14

 

 

用list[]和list[[]]访问列表时得到的结果相同,但是数据类型不同

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据_15

 

 

 

删除列表元素

将列表元素赋值为null即可

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_16

 

 

 

三、数据框

数据框实际上是一个列表。列表总的元素是向量,这些向量构成数据框的列,每一列必须具有

相同的长度,所以数据框是矩形结构,而且数据框的列必须命名。

1、数据框形状上很像矩阵

2、数据框是比较规则的列表

3、矩阵必须为同一数据类型

4、数据框每一列必须同一类型,每一行可以不同

 

 

创建数据框

data.frame

利用data.frame可对多个矩阵进行合并,中间用逗号隔开即可

通过索引访问数据框:

state[1]   访问数据框第一列

state[c(1,2)]访问数据框前两列

 

state[]和state$访问的结果一致

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据类型_17

 

单、双中括号的区别

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_18

 

 

 

 

四、因子

因子,在R中名义型变量和有序型变量成为因子,factor。这些分类变量的可能值称为一个水平

level,例如good,better,best,都称为一个level,由这些水平值构成的向量称为因子。因子可理解为excel表的每一列

 

mtcars可视为一个数据表,cyl为mtcars的其中一列

通过R查看mtcars的cyl因子:mtcars$cyl

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_19

 

 

table函数进行频数统计:

table(mtcars$cyl)

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_20

 

 

 

 定义一个因子:

level是因子去重后的元素的集合

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_字符串_21

 

 

通过ordered和levels对因子进行设置并排序

 

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_字符串_22

 

 

五、缺失数据

na.rm=TRUE 是在计算的时候跳过空值,对存在空值的向量进行计算时,向量个数为向量总数-元素为空的个数

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据类型_23

 

 

is.na函数可识别向量中的空值,空值的返回值为TRUE,其他为FALSE

 

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_字符串_24

 

 

na.omit函数去空值,去空值后可进行计算

 na.omit用于数据框时,将数据框中带有空值的行进行删除

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_25

 

 

除了NA(存在的值,但是不知道多少),R中还有NAN,代表不可能的值,inf代表无穷

通过is.nan和is.inf 分别识别不可能的值和无穷值

 

 

六、字符串

nchar('hello world') 统计字符个数,空格算一个字符

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_26

 

 

length函数统计字符串个数

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_字符串_27

 

 

paste用于连接两个字符串

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言去除表达矩阵中的重复基因_28

 

 

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_字符串_29

 

 

用paste连接一个字符串向量和其他元素时,字符串的每一个元素和其他元素进行连接

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据类型_30

 

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据_31

 

 

 

substr字符串截取函数

三个参数分别是要截取的字符串,开始位置,结束位置

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_32

 

 

 toupper函数,将字符串的字母全部改为大写

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_r语言_33

 

 

 

tolower全部字母小写 

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据_34

 

 

在全部字母小写或大写的前提下将字符串的首字母改为大写:需要熟悉正则表达式

r语言去除表达矩阵中的重复基因 r语言矩阵删除列_数据类型_35

 

 

字符串的分割

strsplit(a,b)

第一个参数为要分割的字符串,第二个参数为分割的符号