学习小组Day5笔记——TheCatcher

超感谢花花教的新建project的方法!其实我之前自己在学的时候就很郁闷,已经学了好几个章节但是一直在同一个project里面,感觉history一点一点地加上去隐隐约约感到不安(以前学C++的时候都是做一个题新建一个project嘛),现在终于学到让我安心的方法啦!

新建R project&working directory

建好了!

快速把昨天的内容补一下

然后
ctrl+l整个console里码过的代码就都没啦
save.image保存工作镜像咯

开始今天的学习惹

向量

向量的赋值

> x<-c(1,2,3)
> y<-(1:10)
> z<-seq(1,10,by=0.5)
> x<-rep(1:3,times=2)

右上角就能看到这几个变量以及它们的值啦

> View(z)手动让它显示变量z的具体内容了,可是点击变量名并没有起到相同的效果
View(z)查看

提取向量中的元素

按元素位置提取

按元素位置提取

根据元素值的大小

> z[z==5]
[1] 5
> z
 [1]  1.0  1.5  2.0  2.5  3.0  3.5  4.0  4.5  5.0  5.5  6.0  6.5  7.0  7.5  8.0  8.5  9.0  9.5 10.0
> z[z==5]
[1] 5
> z[x<5]
 [1]  1.0  1.5  2.0  2.5  3.0  3.5  4.0  4.5  5.0  5.5  6.0  6.5  7.0  7.5  8.0  8.5  9.0  9.5 10.0
> z[z<5]
[1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5
> z[z %in% c(1,2,5)]
[1] 1 2 5

这里注意![]内的变量名称一定要与向量名称一致!
我一开始打z[x==5]就一直返回numeric(0)
但是神奇的是!z[x<5]居然返回的不是空向量,这是啥原理啊?
%in%这个运算符看起来很复杂,但是我总结了下你就当%%是个括号,只看两个%中间的东西的意义就行了(包括pipe中会用到的%>%都是一样的!)

数据框

读取数据框

read.csv

> X<-read.csv(doudou.txt)
Error in read.table(file = file, header = header, sep = sep, quote = quote,  : 
  object 'doudou.txt' not found
> read.csv('doudou.txt')
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA

!所以一定要记得单引号!read.csv('x.txt')

> read.csv("doudou.txt")
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA

试了下双引号也可以嘿嘿,我更习惯双引号呢

read.table

> read.table(file="huahua.txt",sep="\t",header=T)
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA
> (table<-read.table(file="huahua.txt",sep="\t",header=T))
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA

读取文件,分隔符为Tab,有表头
用<-将读取的数据狂赋值给一个变量table
两边再加括号可以同时显示table的内容

行名和列名

查看行名与列名

> X<-read.csv('doudou.txt')
> View(X)
> colnames(X)
[1] "X1" "X2"
> rownames(X)
[1] "1" "2" "3" "4" "5"
可以看到在左上方的版面显示的表格组成与敲代码回车看到的列名行名一致

注意R语言里区分大小写!View()打成view()就不行!
x和X是两个变量!

修改行名与列名

> colnames(X)[1]<-"bioplanet"
> #set the colname of first column as "bioplanet"
> X<-read.csv(file="huahua.txt",sep="\t",row.names=1)
> View(X)

我先看一下huahua.txt在txt格式下长啥样


看看row.names=1带来的变化
第一列变成行名了!

鼠标移到上面去看看

第一列变成了column0,因为这时它已经被设置成了行名,我的理解是它已经不属于变量"有意义"的一部分了,它不再是数据而是行名

数据框的导出

> write.table(X,file="yee.txt",sep=",",quote=F)#导出X为yee.txt,分隔符为逗号,字符串不加引号

让我们来看看导出效果


嗯,跟预想的一毛一样!

变量的保存和重新加载

保存

> save.image(file="bioinfoplanet.RData")
> save(table,file="table.RData")
保存完在工作目录看到了!

重新加载

> load("table.RData")
> table
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA

提取元素

> table
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA
> table[3,2]
[1] NA
> table[2,]
  X1 X2
2  B NA
> table[,2]
[1]  1 NA NA  3 NA
> table[2]
  X2
1  1
2 NA
3 NA
4  3
5 NA
> table[1,2]
[1] 1
> table[1:2]
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA
> table[c(1,2)]
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA
> table$X1
[1] A B C D E
Levels: A B C D E#还显示变量水平这么优秀的吗

直接使用数据框中的变量

先新建一个数据框

> c<-data.frame(case=paste("S",c(1:50)),values=runif(50))
> View(c)

并看看它长啥样


所以现在可以动paste是啥意思了好开心

paste("S",c(1,50)) =c(S 1,S 2,...,S 50)


有空格哦

用这个数据框的数据作图吧

最复杂但是最不容易出错的方法

> plot(c$case,c$values)

attach(千万记得detach哦)

> attach(c)
> plot(case,values)
> detach(c)

不适用于两个以上数据框的列名有冲突时
用完及时detach,不然它会一直留在搜索环境,指不定给你带来什么困扰哦

with

> with(c,{
+ plot(case,values)
+ x<<-summary(values)
+ })
> x
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
0.05364 0.31408 0.56415 0.53437 0.78704 0.98848 

我很不喜欢这个方法诶,,在RSdutio自动补齐括号的情况下想要分行就很烦
我用tidyverse包来皮一下

>library(tidyverse)
> c%>%
+ ggplot()+geom_point(mapping=aes(x=case,y=values))
ggplot就很好看!我为ggplot打call一万年

脚本的使用和保存

按步骤保存和打开了可是全是报错orz

最后是今天的思维导图

就很简单
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 210,914评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,935评论 2 383
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,531评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,309评论 1 282
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,381评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,730评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,882评论 3 404
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,643评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,095评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,448评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,566评论 1 339
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,253评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,829评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,715评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,945评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,248评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,440评论 2 348

推荐阅读更多精彩内容