生信学习小组day5--大姚
新手的小本本:
(1)R的赋值符号不是等号,而是<-
(2)在Console 控制台输入命令,相当于Linux的命令行
(3)R的代码都是带括号的,括号必须是英文的。
(4)显示工作路径 getwd()
(5)向量是由元素组成的,元素可以是数字或者字符串。
(6)表格在R语言中改名叫数据框^_^
(7)别只复制代码,要理解其中的命令、函数的意思。函数或者命令不会用时,除了百度/谷歌搜索以外,用这个命令查看帮助:?read.table,调出对应的帮助文档,翻到example部分研究一下。
(8)数据类型(五种,重点只有两个,剩下的不看)
向量(vector)?重要
矩阵(Matrix)
数组(Array)
数据框(Data frame)?重要
List
一、读取本地数据
正确代码:"\t"中的""内不能有任何空格,否则会导致下图中的报错
read.table(file="doudou.txt",sep = "\t",header = T)
补充:
read.table()函数可以将1个或多个空格、tab制表符、换行符或回车符作为分隔符。而sep分开数据的分隔符。默认sep=""。
header=T是header=TRUE的缩写,header是一个逻辑值,指示表格是否包含文件第一行中的变量名称
二、设置行名和列名
X<-read.csv('doudou.txt') #在示例数据里有doudou.txt 注意这里的变量X是一个数据框
colnames(X) #查看列名
rownames(X) #查看行名,默认值的行名就是行号,1.2.3.4...
colnames(X)[1]<-"bioplanet"#将第一列列名改为bioplant
colnames(X)[1]<-"bioplanet"#将第一行行名改为bioplant
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1)
三、导出数据框
write.table(X,file = "yu.txt",sep = ",",quote=F)#分隔符改为逗号,字符串不加双引号(默认格式带由双引号)
四、变量的保存与重新加载
如果这次没有处理完的数据下次想接着用怎么办?
方法是--学会保存和重新加载。`保存的格式是RData。
save.image(file="bio.RData")#保存当前所有变量,RData的名字是bio
save(X,file="test.RData")#保存X这个变量,RData名字是test
load("test.RData")#再次使用RData时的加载命令```
五、提取元素
- X[x,y]#提取X变量的第x行第y列的元素
- X[x,]#提取第x行的元素
- X[,y]#提取第y列的元素
- X[y] #提取第y列的元素
- X[a:b]#第a列到第b列的元素
- X[c(a,b)]#第a列和第b列的元素
- X$列名#也可以提取列(支持Tab自动补全,不过只能提取一列)
课后问题:
save(X,file="test.RData")这句代码如果报错object X not found,是为什么,应该怎么解决?
这句代码的意思是保存变量X在特定文件test.RData中,会出现问题中的报错情况是因为还没有定义X这个变量又或者说没有这个变量存在,解决方法可以将需要保存的数据赋值到X这个变量或者将X改为已经定义的变量
以上代码以及新手小本本均来自生信星球
相关文章
- C++学习——c++逗号操作符说明(附加全部运算符优先级)
- AAAI'21 「京东」会话推荐--基于图学习和注意力机制的多层次交互关系挖掘
- Datawhale组队学习 -- Task07:类、对象与魔法方法
- 集成光学材料的学习
- 从零开始的异世界生信学习 GEO数据库数据挖掘--GEO背景知识简介
- 一起学习设计模式--07.适配器模式
- 一起学习设计模式--08.桥接模式
- 「Docker学习系列教程」10-Docker容器数据卷案例
- 【学习笔记】JDBC MySQL8.0连接 – Java
- 学习小组Day4笔记--刘
- 生信星球学习小组-Day5学习笔记--R语言数据结构
- 生信学习小组day6--大姚
- 从微信聊天框开始学习CSS属性filter
- 推荐系统遇上深度学习(十四)--强化学习与推荐系统的强强联合!
- 生信星球学习小组-Day7学习笔记--测序知识
- MySQL学习权威论坛:成为MySQL专家(mysql学习论坛)
- 学习Oracle SQL:掌握必备技能(oraclesql教程)
- 深入学习 Linux 系统:一份完整教程(linux系统教程)
- 用机器学习检测Android恶意代码
- 学习redis缓存?这里有视频教程!(redis缓存视频教程)
- 解析:Facebook首创全新深度学习移动平台,“视频版”的Prisma是如何实现的?|深度
- 学习mysql如何设计商品表——实用技巧分享(mysql商品表设计)
- 张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
- 学习YUI.Ext第七天--关于View&JSONView
- 比较实用的正则表达式学习笔记
- javascript学习笔记--数字格式类型
- 我的Node.js学习之路(四)--单元测试