R语言4文件读写
生信技能树R语言部分学习笔记
dir() #列出工作目录下的文件
ls() #列出环境中的变量
1. 认识csv格式
csv打开方式:
(1)默认excel
(2)记事本打开
(3)sublime(适用大文件)
(4)R语言读取:读进R语言之后的数据是一个数据框,可赋值,变量名与文件名无必然联系,对数据框进行的修改不会同步到表格文件。
2. 认识分隔符
常见分隔符:
逗号,
空格
制表符(\t)
CSV: Comma Separated Values
TSV: Tab Separated Values
后缀名没有意义,只是人为定义的格式后缀,约定俗成。在windows电脑上可以更好的绑定打开该文件的软件。
其本质都是纯文本文件。
3. 将表格文件读入R语言,成为数据框
read.csv()
——通常读取csv格式
read.table()
——通常读取txt格式
直接读取文件失败,就需要指定一些参数.
eg: read.table()
中的header=T
表示读取文件的列名,默认是header=F
read.csv()
中header
默认是T;
row.names = 1
把第一列设置为行名;
check.names = F
防止列名发生改变?
comment.char = "!"
指出以什么字符开始的是文件的注释,这里指出以!开始的是注释
4. 将数据框导出,成为表格文件
(1) 导出为csv格式:write.csv()
write.csv(test, file="example.csv")
test是要导出的数据框的变量名,"example.csv"是导出到的文件名
write.table(test, file="example.csv", sep=',')
与上面的方法等价
(2)导出txt格式:write.table()
write.table(test, file="example.txt")
处理数据流程:读取---->编辑修改---->导出
注意:最好不要覆盖原文件(让代码可重复,数据可重现)
5. R特有的数据格式:Rdata
- 是R语言特有的数据存储格式,无法用其他软件打开
- 保存的是变量,不是表格文件,所有不涉及赋值
save()
保存,load()
加载
eg:
save(test, file="example.Rdata")
load("example.Rdata")
注意:save()
中的形参file必须要写,保存多个变量的格式save(ex1, ex2, file="tempt.Rdata")
Rproject的组织形式:
(1)脚本(.R)
(2)数据(.Rdata)
(3)表格(.txt or .csv)
常见报错:找不到文件
可能的原因:
(1)原因1:文件没有存放于工作目录下(解决:Rproject)
(2)原因2:拼写错误(解决:用tab自动补齐)
注意:默认参数不适用于当前读取的文件也会报错
查看数据结构:class()
查看数据类型:str()
R语言能读取的文件格式
(1)通用格式
csv, xls, txt, tsv, json, pdf, spss...
(2)生信格式
fasta, fastq, bam, vcf, bed, gtf...
用于读取/导出文件的R包
(1)base
包中
读取:read.table()
, read.csv()
, read.delim()
写入:write.table()
, write.csv()
(2)readr
包中
读取:read_table()
, read_csv()
, read_tsv()
写入:write_table()
, write_csv()
(3)data.table
包中
fread()
(4)rio
包中
读取:import()
, import_list()
写入:export()
library(rio) #读取和输出xlsx文件非常好
x <- import("ex2_B cell receptor signaling pathway.csv") #按照后缀识别文件
View(x)
export(x,"ad.xlsx")
#import_list() 可以读取多个工作簿