生信小组Day5 数据结构--星期八

小白贴士:

  • R的赋值符号不是等号,而是<-
  • 在Console 控制台输入命令,相当于Linux的命令行
  • R的代码都是带括号的,括号必须是英文的
  • 显示工作路径 getwd()
  • 函数或者命令不会用时,除了百度/谷歌搜索以外,用这个命令查看帮助:?read.table,调出对应的帮助文档,翻到example部分研究一下。
  • 表格在R语言中改名叫数据框

数据类型里,生信学习者最需要熟悉的是向量和数据框。

向量

1. 标量和向量的区分

  • 向量是由元素组成的,元素可以是数字或者字符串(用chr表示)
  • 标量:一个元素组成的变量
    向量:多个元素组成的变量


    生信星球

2. 使用

  • 字符串在使用时需加引号
  • 使用时,一般都会直接给变量定义,也就是“赋值”,字面意思是赋予这个变量一个数值(其实也不一定是数值,还可以是字符串/数据框等等)。
> x<- c(1,2,3) #常用的向量写法,意为将x定义为由元素1,2,3组成的向量。
x
x<- 1:10 #从1-10之间所有的整数
x
x<- seq(1,10,by = 0.5) #1-10之间每隔0.5取一个数(注意是逗号不是分号)
x
x<- rep(1:3,times=2) #1-3 重复2次
x
#多次给x赋值,以最新的为准

例如:创建一个数据框

age <- c(25,34,28,52) #给变量age赋值
diabetes <- c("Type1", "Type2", "Type1", "Type1") 
status <- c("Poor","Improved","Excellent","Poor") 
patientID <- c(1,2,3,4) 
patientdata <- data.frame(patientID, age, diabetes, status) #patientdata为该数据框名称,向量按顺序排列

注:

  • 单击右上角的Data,可查看表格。或者在控制台输入view(数据框名称)
  • 每一列必须有列名,每一行也可指定行名,如果不指定行名,就是从1开始自增的顺序数标识。
  • colnames(X) #查看列名
  • rownames(X) #查看行名,默认值的行名就是行号,1.2.3.4...
  • 后期更改列名:names(patientdata) <- c("wei","hei","gen")
  • 更改行名:row.names(patientdata) <- c("Mary","Alice","Bob","Judy"),按顺序排列

3.从向量中提取元素

(1)根据元素位置

x[4] #x第4个元素
x[-4]#排除法,除了第4个元素之外剩余的元素
x[2:4]#第2到4个元素
x[-(2:4)]#除了第2-4个元素
x[c(1,5)] #第1个和第5个元素

(2)根据值

数据框

1. R读取txt文件

(1)新建一个数据,示例:doudou.txt,需要把源数据文件复制一份放在工作目录下,方便引用。

(2)使用R读取txt文件直接使用read.table()方法进行读取即可,不需要加载额外的包。
例如:read.table(file = "doudou.txt",sep= "\t",header = T)

注释:



制表符:功能是在不使用表格的情况下在(垂直)方向按列对齐文本。

(3) 输入X<-read.csv('doudou.txt'),创建了一个名为X的数据框,引用的是doudou.txt的源数据

(4)数据框的导出
write.table(X,file = "yu.txt",sep = ",",quote=F)

你可能感兴趣的:(生信小组Day5 数据结构--星期八)