生信人学习R(day01)

这是我看生信技能树的视屏记得笔记

#读取一个.txt文件(此处还可以为csv文件,但是不可以是Excel,当读取CSV时不需要后面的参数)

Q = read.table("GSM1545535_10_6_5_11.txt", header = T, sep = "\t")

#此处必须有stringsAsFactors这个参数

a = read.csv("GSM1545535_10_6_5_11.csv", stringsAsFactors = F)

unlist(lapply(strsplit(a$GeneLength, ','), function(x){x[2]}))

install.packages(stringr)

library(stringr)

vignette('stringr')

str_split()

#查看

View(Q)

#查看Q类型

class(Q)

#取Q第1到5行给q

q = Q[1:5,]

#赋值并打印

(w = q[1 : 3, ])

#定义向量1

seq(1,10)

#seq(1:10),这么写是错的

#定义矩阵

e = matrix(1 : 10, 2)

View(e)

Q[, 1]

#比对向量Q的第一列的每个元素是否等于68507,返回元素为逻辑类型的向量

Q[, 1] == 68507

table(Q[, 1] == 20668)

#输出为:

#FALSE  TRUE

#27178    1

#返回哪一行匹配成功

which(Q[, 1] == 20668)

#定义向量2

temp = c(1, 2, 3, 4)

#提取匹配成功的某一行

f = Q[which(Q[, 1] == 20668),]

View(f)

#定义向量3

a = 1 : 3

#求和第一列

sum(Q[,1])

#求均值特殊列

mean(Q$Count)

#找最大值特殊列

max(Q$Count)

#求特殊列的五特征数

fivenum(Q$Count)

#正则匹配,返回匹配成功的行号

grep(097, q[, 1])

(h = q[grep(097, q[, 1]), ])

#正则匹配,返回匹配成功的行的向量,元素类型为逻辑型

grepl(097, q[, 1])

#此处假设去出的列类型为string

temp = q$GeneLength

#循环操作

lapply(strsplit(temp, ','), function(x){x[2]})

#循环操作原理

l = strsplit(temp, ',')

lapply(l, function(x){

  #x为包含两个元素的列表

x[2]

})

for(x in l[1 : 4]){

  print(x[2])

  #x = l[[n]]

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容