美文网首页
2019-03-08

2019-03-08

作者: 球球_180b | 来源:发表于2019-03-09 00:12 被阅读0次

    第十三期Day4 R语言初上手

    豆豆花花 [生信星球](javascript:void(0);) 今天

    准备工作

    要学R语言了,R和Rstudio下载到自己电脑上。R需要的操作全部在自己电脑上,因此不涉及到服务器。(服务器可以配置自己的Rstudio,供大家远程登陆,用浏览器打开后面加上:8787就可以登录,但是阿里云并没有自带,用自己电脑完全可以的。)

    今天的学习内容:

    如果你的电脑用户名是中文的,必须改成英文才能安装Rstudio,这是因为英文软件很牛,但是遇到中文路径就傻了。。。

    1.安装R(基础)和Rstudio(人性化一些的界面)

    2.粗略了解R语言是什么,干什么的,认识Rstudio的工作界面

    3.完成第一个R做的图

    4.学会外观设置和基本操作

    如果已经安装或者基础较好,可以看下R for Data Science的第一章,系统学习作图。 对照原书看,百度R for Data Science 第一个结果就是了,免费。

    第一步:查看你的电脑用户名是中文还是英文

    先在电脑桌面随便打开一个文件夹,打开是这样:

    image image

    如果是英文就跳过第二步

    第二步:修改用户名为英文

    如果你的用户名不幸是中文的,那就必须改为英文,否则无法安装Rstudio。这是一个大大的坑!如果按照下面的教程做不成功,那问题就大了,我解决不了,你只能去网上搜别的教程试试。 生信小白第20天--windows软件安装准备工作(教你如何改用户名)

    第三步:下载R和Rstudio

    用搜狗微信搜索:“果子学生信 给自己一个全新的R语言环境”

    image

    注意:只看R和Rstudio的下载部分,剩下的非学习范围。如果跟着这个没搞定,最后一个解决办法:史上最贴心R包安装示范视频  (花花的碎碎念---如果你安装完成,要知道自己已经迈过了好大好大的一个坑!!一般来说你并不知道Rstudio需要英文用户名,如果你自己发现了,那一般是在安装上碰了壁,浪费了好长时间然后想明白,再去找教程改用户名,就不是一两小时能完成的事情了。网上有很多改用户名的教程都不好用,你甚至看不懂他在说什么。好的下载教程也不是随手能找到的,我之所以没有自己写怎么下载,是因为果子老师和生信技能树已经写得非常好,无以复加!)

    重点****:****Rstudio的界面介绍和基本操作

    ↓点击链接查看↓

    写给零基础同学的R和Rstudio教程注意 如果这些基础操作会的话,就看ggplot去哦作业:整理R基本操作的学习笔记。安装不需要写。

    写给零基础同学的R和Rstudio教程

    原创: 豆豆花花 [生信星球](javascript:void(0);) 2018-08-09

    [图片上传失败...(image-df5561-1552060289576)]

    [图片上传失败...(image-61bc6b-1552060289576)]

    今天是生信星球陪你的第91天[图片上传失败...(image-53611c-1552060289576)]


    你想找辆共享单车,发现满街都是别家车,没有一辆你能骑。

    你想学点生信,搜了“初学者教程”,满眼尽是高大上,没有一句能看懂。

    终于你跨越茫茫宇宙,来到生信星球,发现了初学者的新大陆!

    如果你尚不清楚R语言是啥,请简单看一下初识R语言,至于Rstudio是啥不必过多关心,反正就用它作为R的操作平台。

    一.认识Rstudio

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;">认识Rstudio的界面</figcaption>

    学会自己列一下思维导图,我这个是用xind做的,也可以用幕布。(早先开始作分享的时候我有时没时间,就直接发思维导图贴出来了。后来发现这样是不对的,毕竟是大纲,经过删减和消化的东西,别人理解起来是有困难的。因此我不推荐大家保存我的思维导图,要自己整理)

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    第一次上手,先做一个最简单的图:

    plot(runif(50)) #百度查查plot和runif什么意思
    
    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    二.调一个舒服的显示方式

    我用的是台式机,字也太小了啊啊啊。

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    三.R的基本操作


    这一部分的思维导图

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    1.R的工作目录

    > getwd()  #查看工作目录
    

    我的是:

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    我们在电脑桌面上新建一个RData。(这个应该不需要截图了啊)
    然后把RData作为工作目录。所谓工作目录就是默认的读取和储存位置。

    我要把他设置为工作目录,不仅要知道设置的命令是setwd(),那这个RData路径要咋填呢?
    首先正常打开这个文件夹,点地址栏就会出现它的完整路径

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    看一下我刚刚的尝试及报错解决办法


    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    所以正确的命令是:

    setwd(dir="C:/Users/kingjie/Desktop/Rdata")
    

    当然是按照你刚才复制的那个目录,反斜线改掉,不是直接复制我这个啊。
    另外“dir=”可以省略的。我这是一种偷懒的行为_
    不报错就是成功了
    现在再getwd(),就会显示你新设置的路径了。
    (好懒不想再打一遍,按键盘的向上箭头,可以翻阅历史命令。在这里摁几下就到了上一个getwd()了。)

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    2.显示文件列表
    直接打命令不跟路径会显示哪里?显示默认路径对吧。
    既然工作目录的意思是默认的存储和读取位置,那默认路径说的不就是它嘛!
    想起了linux的ls了。

    list.files()dir()
    

    这俩一个意思。都相当于ls

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    零个对象?这可不是报错,这是因为你的RData文件夹里没东西。
    所以我在RData新建一个doudou.txt.再来试试(偷懒指南:向上箭头↑键)


    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    这下不是零了。有豆豆.txt.了。

    3.计算 1+2 回车
    4.函数
    ex:求和:sum(1,2,3,4,5)

    ls() #列出变量名str(a)  #打出变量a的具体信息ls.str() #等于ls()和str()的组合ls(all.name=TRUE)#将以.开头的对象也一并列出,相当于linux的ls -a(好像并没有什么用)
    

    刚开始我想,左上角明明有变量列表,为啥还要在控制台打出来?大概是因为懒得找。
    5.赋值
    赋值符号用<-,这是小于号加上减号,也可以按Alt加上减号
    x<- 1+2 意思是把1+2的运算结果赋值给x, 赋值后,x会显示在右上角的框,Environment里的Value列表里
    直接输入x 回车 出现3,前面的那个[1]是个行号,3就是x的值(初学好像没什么必要以这种方式查看x的值,因为它就在右上角显示着了。但是当变量很多,找起来比较麻烦的时候就有用了)

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    6.删除对象
    对象就是数值、数据框啊等等。大概可以理解为被赋值的对象吧。

    a<-3b <- 1c <- 4u <- 5+6rm(b)rm(u,c)   #一次删除多个,还有一个做法是rm(list = "u","c"),字太多我表示拒绝
    

    上面的代码不要复制,请手打↓括号很容易被打成中文的啊
    如果你看到这个报错,那就八成是括号打错了,不识别中文的。R的报错很个性,还把你打错的第一个位置列出来了,如图表示的是ls后面的符号打错了。

    image

    <figcaption style="margin: 10px 0px 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; line-height: inherit; text-align: center; color: rgb(153, 153, 153); font-size: 0.7em;"></figcaption>

    7.列出历史纪录
    history() #会给你列出一大堆
    history(10)#只列出最近的10条记录
    8.清空屏幕
    ctrl+l
    9.保存工作空间
    save.image保存数据和绘图函数。

    初学生信,很荣幸带你迈出第一步。
    正是因为如此,我在指导几个小伙伴入门R语言的时候简单粗暴的指出:
    所有的软件都安装在c盘哦,然后系统用户名最好是不要用中文,写代码最怕中文字符串哦!
    生信0基础第一步,下载R和Rstudio并且安装在自己的电脑上面。官网链接是
    R: https://mirrors.tuna.tsinghua.edu.cn/CRAN/
    RStudio:https://www.rstudio.com/products/rstudio/download/#download
    如果你的网络不好,可以从我整理的网盘下载,链接:https://share.weiyun.com/5hW6VAA 密码:3fuhrm

    options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
    if(! require("devtools")) install.packages("devtools")
    if(! require("reshape2")) install.packages("reshape2")
    if(! require("ggplot2")) install.packages("ggplot2")
    if(! require("pheatmap")) install.packages("pheatmap")
    if(! require("ggfortify")) install.packages("ggfortify")
    if(! require("stringr")) install.packages("stringr")
    if(! require("survival")) install.packages("survival")
    if(! require("survminer")) install.packages("survminer")
    if(! require("lars")) install.packages("lars")
    if(! require("glmnet")) install.packages("glmnet")

    if(! require("timeROC")) install.packages("timeROC")
    if(! require("ggpubr")) install.packages("ggpubr")

    if(! require("randomForest")) install.packages("randomForest")
    if(! require("ROCR")) install.packages("ROCR")
    if(! require("Hmisc")) install.packages("Hmisc")

    if(! require("caret")) install.packages("caret")

    if(! require("genefilter")) install.packages("genefilter")

    if(! require("ggstatsplot")) install.packages("ggstatsplot")

    下面的包是为了临床三线表

    if(! require("tableone")) install.packages("tableone")

    网络不好,就不要安装了。

    而且Windows电脑安装 rJava 也经常是需要人指导的。

    https://github.com/rstudio/rstudio/issues/2254

    if(! require("rJava")) install.packages("rJava")
    if(require('rJava')){

    https://cran.r-project.org/src/contrib/Archive/ReporteRs/

    if(! require("ReporteRs")) install.packages("ReporteRs")
    devtools::install_github('davidgohel/ReporteRsjars')
    devtools::install_github('davidgohel/ReporteRs')
    }

    library(devtools)
    source("http://bioconductor.org/biocLite.R")

    如果你的网络实在是太差,试试看:

    install.packages("BiocInstaller",repos="http://bioconductor.org/packages/3.7/bioc")

    很可惜你在中国大陆,不得不承受这个痛苦。

    options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
    library('BiocInstaller')
    if(! require('edgeR')){

    biocLite(c('airway','DESeq2','edgeR','limma'))
    }

    if(! require("CLL")) biocLite("CLL")
    if(! require("org.Hs.eg.db")) biocLite('org.Hs.eg.db')
    library(BiocInstaller)
    options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
    if(! require("maftools")) biocLite("maftools")
    if(! require("RTCGA")) biocLite("RTCGA")
    if(! require("RTCGA.clinical")) biocLite("RTCGA.clinical")

    https://bioconductor.org/packages/3.6/data/experiment/src/contrib/RTCGA.clinical_20151101.8.0.tar.gzn

    if(! require("RTCGA.miRNASeq")) biocLite("RTCGA.miRNASeq")
    if(! require("maftools")) biocLite("maftools")
    if(! require("genefilter")) biocLite("genefilter")

    Then from : https://github.com/ShixiangWang

    You don't need run the codes below, I will explain to you face to face.

    source("http://bioconductor.org/biocLite.R")
    packs = c("devtools", "reshape2", "ggplot2", "pheatmap", "ggfortify", "stringr", "survival",
    "survminer", "lars", "glmnet", "timeROC", "ggpubr", "randomForest", "ROCR", "genefilter",
    "Hmisc", "caret", "airway","DESeq2","edgeR","limma", "CLL", "org.Hs.eg.db", "maftools")
    if(! require(pacman)) install.packages("pacman", dependencies = TRUE)
    pacman::p_load(packs, dependencies=TRUE, character.only = TRUE)

    check

    pacman::p_loaded(packs, character.only = TRUE)
    all(pacman::p_loaded(packs, character.only = TRUE))

    image.png
    image.png
    image.png
    image.png
    https://www.bilibili.com/video/av25643438/

    相关文章

      网友评论

          本文标题:2019-03-08

          本文链接:https://www.haomeiwen.com/subject/lijjpqtx.html