前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jely's Note之生信入门class5

Jely's Note之生信入门class5

原创
作者头像
用户10556369
发布2023-05-17 21:08:01
8810
发布2023-05-17 21:08:01
举报
文章被收录于专栏:Jely’s生信笔记Jely’s生信笔记

class 5

#本文引用自生信技能树

一、判断R包的安装

1.电脑是否已经安装过此R包?

>as.logical(require())

if(!require())install.packages()----会返回:逻辑值!

F:电脑已经安装

T: 电脑没安装,并现在安装R包

【加!感叹号,可使结果变成逻辑值】

【小贴士!让warning闭嘴的操作:quietly=T】

【条件语句if(F)后面代码跳过、if(T)后面代码被执行】

【写代码的时候要有验证、检查的意识和能力】

2. R包如何使用

(1)---获取帮助

查看帮助文档:?+函数名称

【R语言有基础包,如base包】

(2)---找R包介绍页面(直接搜)

网页搜:limma package

【一般不需要】

(3)---列出一个包都有哪些函数

ls:列出当前环境的所有变量

>ls("package:stringr")前提:要先把R包加载成功,才能用ls列出来

列出一个包都有哪些函数或数据

3.R语言里的符号

()--函数、赋值和输出、先运行

[]---向量、数据框、矩阵取子集

[[]]---列表取子集

$ 数据框取列,列表取子集

<- 赋值

= 赋值,连接形式参数与实际参数

== 判断是否相等

! 逻辑值的否定

{} 多行代码

::包::函数

4.认清函数和数据

· 只有数据才能被取子集![]

· 两个中括号前取子集一般是从列表中提取![[]]

· 而文件名称应该:1.在实际参数位置2.且在能识别文件名称的函数括号内3.带引号

5. 解决问题的正确姿势

(1)检查代码与环境

代码错误?环境问题?工作目录?重启?

重启(诡异的错误):

1.session

2.Rstudio

3.电脑

(2)找不同:

比较数据:能正确运行的数据、出错的数据

异常值?重复值?非法输入?数据类型?数据结构?

非法输入:如颜色:鸡蛋

Inf:正无穷,-Inf:负无穷

NaN:非数字;NULL:

(3)搜索报错:

复制error信息,浏览器搜索

(4)有效提问:

前因、后果、目的

代码、数据、报错截图

做过的尝试

6.文件的读写

(1) 一般在读取时就赋值!----文件读取是R语言中的数据框来源

【变量名test--存在R语言内部=read.csv("文件名")】

【表格文件读入到R语言里,就得到了一个数据框,对数据框进行的任何修改都不会同步到表格文件】

(2)常见分隔符号:

逗号、空格、tab-制表符

逗号分隔文件:csv

以制表符为分隔文件:TSV

【通常用于读取txt格式:read.table()】

【通常用于读取csv格式:read.csv()】

· 直接读取如果失败,就需要指定一些参数

· class是判断R语言内部的数据是哪个数据类型?

失败有两种表现:1.报错2.意外结果

(3)将数据框导出,成为表格文件

csv格式:write.csv()

text格式:write.table()

注意:

!!读取-编辑修改-导出(不一样的数据名)

!!不要覆盖原文件

!!让代码可重复,数据可重现

不要使用excel会改基因名称!一切操作在r语言中进行

(4)R特有的数据保存格式:Rdata

Rdata:保存的是变量,不是表格文件

支持多个变量存到同一个Rdata

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

· 相关命令:

save()保存:save(test,...,file="文件名")

load()加载:load(“文件名”)

(5)文件的后缀

没有意义,文件内容不改变

(6)文件导出

write.文件类型(变量,file=)

(7)实站文件!!

1.输出文件、输入文件、输出的图片、保存的Rdata、

脚本和Rmd文件+Rproject

读取:surv变量=read.table("import/文件名)

2.分步骤

加载上一级的文件、相隔文件夹调用文件时!:用..来表示

load("../文件夹/文件名)

3.经典报错:

原因1:文件没有存放于工作目录下/拼写错误用Tab自动补齐

4.默认参数不适于你当前需要手动调整

(8)读取ex1.txt

ex1 <- read.table("ex1.txt")

1)列名变行!列名没有被正确识别!如header=F

解决办法:!看函数帮助文档!

read.table(file,header=F---表格中的第一行是否是列名!)

ex1 <- read.table("ex1.txt",header = T)

2)行名没有正确识别:row.names = 第几列是行名

ex2 <- read.csv("ex2.csv",row.names = 1,check.names = F--有特殊字符不改!)

【数据框不允许重复的行名!会报错!先处理重复值,再设为行名!

read.csv("rod.csv",row.names = 1)

rod = read.csv("rod.csv")】

3)读取soft.txt【比table更好的读取:read.delim("")】

如果soft数据中间有空缺!R语言读文件时串列了怎么办!不报错!=哑巴地雷

连续两个分隔符=空列=一切看不见的东西都会被认为是!sep=""一个分隔符

soft <- read.table("soft.txt")

【X]soft <- read.table("soft.txt",header = T,fill = T) #其实不对

有坑!

【√】soft2 <- read.table("soft.txt",header = T,sep = "\t")

4)soft 的行数列数是多少?列名是什么

dim(soft)---维度,统计多少行多少列

colnames(soft)-----列名

rownames()-----行名

5)将soft导出为csv

write.csv(soft,file = "soft.csv")

6)将soft保存为Rdata并加载。

save(soft,file = "soft.Rdata")---保存

rm(list = ls())-----rm=ls清空环境

load(file = "soft.Rdata")-----不会保存后立刻加载

(9)读取时要经常检查!

用于读取/导出文件的R包

fread()实现智能读取【data.table】

export()导出【rio】

import_list---多个工作部的数据,引入

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据保险箱
数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档