前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Day4-5 R语言代码

Day4-5 R语言代码

原创
作者头像
用户11012820
修改2024-03-10 12:06:06
2090
修改2024-03-10 12:06:06
举报

一、读取文件

1、读取文件小tips:

(1)read.table()和read.csv()两者之间没有不可逾越的鸿沟,只是方便读取某一类文件类型;报错就需要添加对应的参数。

(2)在数据框类型数据的行取子集时、导入TXT文件时,注意一下数值型数据的行/中,有没有藏着字符型数据。马虎了就会影响后续数据处理。

2、读取各种类型文件

(1)TXT文件,建议使用read.delim()函数,因为它的一些默认参数比read.table()适用范围更广;

(2)csv文件

1)“check.names = F”可以让R不修改行列名字,PS:R语言中行列名字中不能有特殊字符;

2)row.names = 1”这个参数意思时不能把第一列作为行名;PS:R语言中行名不能重复,如果将有重复的A列设为行名,需要先不将row.name参数添加进来,处理A列的重复值(去重复、两行取平均值合并为一行),再设置为行名。

3)一定要要经常查看自己的数据是否读取正确;

(3)xlsx文件,建议使用rio包里面的函数

代码语言:R
复制
library(rio)
#读取
ex1 = import("ex1.txt")
#读取多工作簿的excel
ls2 = rio::import_list("ls.xlsx")
#导出为普通表格文件
export(iris,file = "iris.csv")
#导出列表
ls = split(iris,iris$Species)
export(ls,file = "ls.xlsx")

(4)fread()函数适用范围广且很智能,在读取过程中不需要添加过多参数,而且读取大文件速度快,不过读取的数据会被默认为"data.table"格式,需要添加参数"data.table=F"来避免

代码语言:R
复制
#data.table
ex1 = data.table::fread("ex1.txt")
class(ex1)
ex1 = data.table::fread("ex1.txt",data.table = F)
class(ex1)

(5)读取压缩包不需要解压缩。

代码语言:R
复制
a <- read.delim("GSE217012_Normalized_RPKM_LOG2_matrix.txt.gz",
                check.names = F,
                row.names = 1)

二、零散知识

1、Rdata是R语言特有的数据储存格式,无法用其他的软件打开

代码语言:R
复制
save(a,file = "exam.Rdata")
load("exam.Rdata")

2、判断两个数据是否相同(数据内容和数据结构)

代码语言:R
复制
identical(a,a1)

3、列名的批量修改

代码语言:R
复制
library(stringr)
colnames(a1) <- str_remove(colnames(a1),"- log2 total RPKM")
colnames(a1)

4、形式参数和实际参数

三、R包安装

1、一个未知的包,如果不知道怎么安装。用三种方法都蒙一次,然后安装;R语言的工作路径设置在C盘也没关系,因为R包占用的空间不多。

代码语言:R
复制
BiocManager::install("limma")
install.packages('devtools')
devtools::install_github("jmzeng1314/idmap1") #括号里写作者用户名加包名

2、在R语言中,安装R包的命令中可以加update=N,ask=N,省事。

3、libraryR包时,在error中, ‘ ’ 里面的内容经常就是依赖包的名字,需要重点关注。

4、本地安装,将R包zip文件下载下来,然后放在工作路径中

代码语言:R
复制
devtools::install_local(“xxxx.zip”)

5、window电脑可能会存在的权限问题

6、R包不会用,有作者的第一手教程;或者列出一个包里面的函数和数据

代码语言:R
复制
browseVignettes("limma") #不是每个包都有
ls("package:limma")

生信技能树,小洁老师

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档