前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >生信技能树学习笔记1

生信技能树学习笔记1

原创
作者头像
小张小张
发布2023-05-10 10:33:00
3430
发布2023-05-10 10:33:00
举报

R Markdown

knitr::knit("")

转换为md文件

代码语言:text
复制
is.numeric("A") 
代码语言:txt
复制
## [1] FALSE
代码语言:text
复制
##是否为数值型数据,返回值为TRUE或FALSE
as.numeric("4")
代码语言:txt
复制
## [1] 4

第一讲:认识R

" > "在R语言中是命令提示符

()前面的单词是函数

getwd()

获取绝对路径

路径补充

文件在桌面上,不在工作目录下,怎样读取

绝对路径,换了电脑就读不成功

x1 = read.csv("C:/Users/win10/Desktop/x.csv")

相对路径,文件的相对位置正确,则可以读成功

x1 = read.csv("../x.csv")

把x.csv放进了工作目录下的test文件夹里

x1 = read.csv("test/x.csv")

把整个biotrainee换个位置或者发给别人,仍然可以读取成功

字符型数据:"a",'b'

逻辑型数据:TRUE,FALSE,NA

数值型:1.3,2

class()

###判断数据类型

第二讲:数据类型

1. 逻辑型数据

与 &, 或 |,非 !,等于 ==,不等于 !=

2. is族函数

代码语言:text
复制
is.numeric("A") 
代码语言:txt
复制
## [1] FALSE
代码语言:text
复制
##是否为数值型数据,返回值为TRUE或FALSE

3. as族函数实现数据类型之间的转换

代码语言:text
复制
as.numeric("4")
代码语言:txt
复制
## [1] 4
代码语言:text
复制
4
代码语言:txt
复制
## [1] 4
代码语言:text
复制
##将其他数据转换成数值型数据

4. 数据结构

向量(一串数据,数据框中单独拿出一列是向量,视为一个整体,一个向量只能有一种数据类型,可以有重复值)

数据框(约等于表格,一列只能有一种数据类型)

矩阵

列表

4.1 向量的生成

代码语言:text
复制
c(2,3,15,5,7)
代码语言:txt
复制
## [1]  2  3 15  5  7
代码语言:text
复制
c(1:9)
代码语言:txt
复制
## [1] 1 2 3 4 5 6 7 8 9
代码语言:text
复制
rep("x",times=3)
代码语言:txt
复制
## [1] "x" "x" "x"
代码语言:text
复制
##有重复的用rep(),有规律的序列用seq(),随机数用rnorm()
seq(from=3,to=21,by=3)
代码语言:txt
复制
## [1]  3  6  9 12 15 18 21
代码语言:text
复制
paste0(rep("x",times=3),1:3)
代码语言:txt
复制
## [1] "x1" "x2" "x3"
代码语言:text
复制
###paste0函数是把数据连在一起。连接函数

一个向量中有不同数据类型时有优先级

代码语言:text
复制
c(1,"a")
代码语言:txt
复制
## [1] "1" "a"
代码语言:text
复制
c(TRUE,1)
代码语言:txt
复制
## [1] 1 1
代码语言:text
复制
#C(FALSE,"a",TRUE)

变量名的取名规则:x_1,x.1,b1,A,a可用,x-1,2a,x 2,seq,c,巴拉巴拉不可用。

4.2 对单个向量进行操作

代码语言:text
复制
#简单计算
x<-c(1,3,5,6)
log(x)
代码语言:txt
复制
## [1] 0.000000 1.098612 1.609438 1.791759
代码语言:text
复制
sort(x,decreasing=T)
代码语言:txt
复制
## [1] 6 5 3 1
代码语言:text
复制
##默认从小到大,T会变成从大到小

常用函数:

代码语言:text
复制
x<-c(1,3,5,6)
var(x)#方差
代码语言:txt
复制
## [1] 4.916667
代码语言:text
复制
sd(x)#标准差
代码语言:txt
复制
## [1] 2.217356
代码语言:text
复制
length(x)#x长度
代码语言:txt
复制
## [1] 4
代码语言:text
复制
unique(x)#去重复
代码语言:txt
复制
## [1] 1 3 5 6
代码语言:text
复制
duplicated(x)#判断是否重复
代码语言:txt
复制
## [1] FALSE FALSE FALSE FALSE
代码语言:text
复制
table(x)#重复值统计
代码语言:txt
复制
## x
## 1 3 5 6 
## 1 1 1 1
代码语言:text
复制
sort(x,decreasing=T)#排序##默认从小到大,T会变成从大到小
代码语言:txt
复制
## [1] 6 5 3 1

4.3 对两个向量进行操作

在R语言中,paste和paste0都是用于连接(concatenate)字符串的函数。它们的区别如下:

paste()函数:将多个输入对象连接成一个字符串,并在每两个相邻的对象之间添加分隔符,默认为一个空格。例如,paste("a", "b", "c")返回值为 "a b c"。

paste0()函数:与paste()函数类似,但是不会在对象之间添加分隔符。例如,paste0("a", "b", "c")返回值为 "abc"。

因此,如果你需要在字符串之间添加分隔符,则使用paste()函数;如果你不需要添加分隔符,则使用paste0()函数可以使代码更简洁易读。

这里还有一些其他的区别:

paste函数可以接受多个参数,并将它们连接起来,而paste0只接受两个或多个参数。

paste函数的默认分隔符是空格,但是你可以使用sep参数来指定自己想要的分隔符。而paste0没有分隔符参数,始终不添加分隔符。

总之,paste()和paste0()函数的主要区别在于是否添加分隔符。

4.4 利用循环补齐简化代码

(1)等位运算

(2)向量长度不相等

以长的为主

代码语言:text
复制
paste0("student",seq(2,5,2))
代码语言:txt
复制
## [1] "student2" "student4"
代码语言:text
复制
paste0(rep("student",times=7),seq(from=2,to=15,by=2))
代码语言:txt
复制
## [1] "student2"  "student4"  "student6"  "student8"  "student10" "student12" "student14"

4.5 对向量取子集

按照逻辑值:中括号里是与x等长且一一对应的逻辑值向量,

按照位置:中括号里是由x的下标组成的向量。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • R Markdown
  • 第一讲:认识R
  • 第二讲:数据类型
    • 1. 逻辑型数据
      • 2. is族函数
        • 3. as族函数实现数据类型之间的转换
          • 4. 数据结构
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档