分享

哈佛R语言课程--1.R简介

 生物_医药_科研 2019-04-03

 今天是生信星球陪你的第326天


   大神一句话,菜鸟跑半年。我不是大神,但我可以缩短你走弯路的半年~

   就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~

   这里有豆豆和花花的学习历程,从新手到进阶,生信路上有你有我!

原课程链接:
https://hbctraining./Intro-to-R/lessons/01_introR-R-and-RStudio.html
https://github.com/hbctraining/Intro-to-R

学习目标

  • 描述R和RStudio是什么。

  • 使用RStudio与R交互。

  • 使用RStudio的各种组件。

1.什么是R?

有人认为R是一种编程语言,这是一种常见的错误理解,因为R远不止于此。将R视为统计计算和绘图的环境,它汇集了许多函数,能够提供强大的功能。

R环境结合了:

  • 有效处理大数据

  • 集成工具的集合

  • 绘图工具

  • 简单有效的编程语言

2.为什么用R?

开源、可视化、数据科学、统计计算、平台无关(platform agnostic)

R是一个功能强大,可扩展的环境。它具备各种数据统计、通用数据分析和可视化功能。

  • 数据处理,清理和存储

  • 提供各种统计方法和绘图技术

  • 易在多平台上安装和使用(而且免费!)

  • 开源,拥有庞大且不断增长的同行社区

3.什么是RStudio?

RStudio是免费提供的开源集成开发环境(IDE)。RStudio提供了一个具有很多功能的环境,使R更容易使用,是在终端中使用R的绝佳选择。

  • 图形用户界面,而非只有命令行

  • 优秀的学习工具

  • 科研用途免费

  • 开源

4.在RStudio中创建一个新的project目录

让我们为今天的“R简介”课程创建一个新的项目目录。

  1. 打开RStudio

  2. 打开File菜单选择New Project

  3. New Project窗口中,选择New Directory。然后选择Empty Project,为新目录命名Intro-to-R,然后选择路径,例如桌面(或自定义位置)。

  4. 点击Create Project

  5. 项目完成后,如果项目未在RStudio中自动打开,则转到File菜单,选择Open Project,然后选择Intro-to-R.Rproj

  6. 打开RStudio,窗口中显示三个面板。

  7. 打开File菜单并选择New File,然后选择R Script。现在,RStudio界面应该如下面的屏幕截图所示。

5.RStudio界面

RStudio界面有四个主要面板:

  1. 控制台:可以在这里键入命令并查看输出。如果你在命令行运行R,就只能看到控制台。

  2. 脚本编辑器:可以在这里键入命令并保存到文件。还可以直接提交要在控制台中运行的命令。

  3. enviroment/history:enviroment显示所有活动对象,history记录在控制台中运行的所有命令

  4. 文件/图片/包/帮助

6.组织你的工作目录和设置

6.1查看你的工作目录

在组织工作目录之前,先检查当前工作目录的位置,在控制台中输入命令:

getwd()

你的工作目录应该是Intro-to-R,是你在创建project时一起新建的文件夹。工作目录是RStudio读取和保存文件的默认位置,除非另行指定。

可以通过Files从右下角窗口中选择选项卡查看工作目录种的文件。

如果要选择其他文件夹作为工作目录,可以在右下角Files选项卡中定位其他文件夹,单击More下拉菜单并选择Set As Working Directory

6.2 构建工作目录

要组织某个项目的工作目录,应将原始数据(原始数据)与中间数据集分开。例如,可能希望在工作目录中创建一个存储原始数据的data/目录,并具有中间数据集的results/目录和要生成的图的目录figures/

可以通过New FolderFiles选项卡中单击来在工作目录中创建这三个目录。

完成后,工作目录应如下所示:

6.3 将文件添加到工作目录

我们将在接下来的几节课中介绍几个文件,点击以下链接访问。如果右键单击该链接,并将“链接另存为…”,定位到工作目录。即可看到该文件出现在工作目录中。我们将在本课后稍后讨论这些文件。

  • 右键单击此链接下载规范化计数文件

  • 使用此链接下载元数据文件

注意:如果文件自动下载到笔记本电脑上的其他位置,则使用文件浏览器或查找程序(在RStudio外部)将它们移动到工作目录,或在RStudio右下方面板Files中跳转目录、浏览查找

6.4 配置

设置长代码自动换行,不用左右滚动查看长代码。

单击RStudio屏幕顶部的“Tools”,然后单击下拉菜单中的“Global Options”。

在左侧,选择“代码”并检查“软包装R源文件”。确保单击窗口底部的“应用”按钮,然后单击“确定”。

7.与R交互

现在我们已经设置好了界面和目录结构,开始玩转R语言!在RStudio中与R交互有两种主要方式:使用控制台或使用脚本编辑器(脚本是包含代码的纯文本文件)。

7.1 控制台窗口

控制台窗口(在RStudio,左下面板)是其中R是等着你来告诉它做什么的地方,在那里它会显示每个命令的结果。可以直接在控制台中键入命令,但session关闭时会清空。

我们来测试一下:

3 + 5

7.2 脚本编辑器

最佳做法是在脚本编辑器中输入命令,然后保存脚本。我们鼓励使用#自由注释,以描述正在使用的命令。通过这种方式,可以完整记录自己的操作,也可以可以轻松地向其他人展示你是如何做到的,如果需要,也可以重复运行某一操作。

Rstudio脚本编辑器允许通过单击脚本编辑器右上角的Run按钮将当前行或当前选中的文本“发送”到R控制台。快捷键是Ctrl+Enter

现在让我们尝试向脚本编辑器输入命令,并使用注释字符#添加描述并选中要运行的文本:

# Intro to R Lesson
# Feb 16th, 2016

# Interacting with R

## I am adding 3 and 5\. R is fun!
3+5

选中要运行的命令,点击Run,可以看到命令在控制台中运行并输出结果。

如果不加注释符号#,运行同样的命令,会发生什么?删除前面的#符号后重新运行命令:

I am adding 3 and 5. R is fun!
3+5

现在R试图将该句子作为命令运行,但它不起作用。我们在控制台中出现错误“Error: unexpected symbol in “I am” ,意味着R解释器不知道如何处理该命令。*

7.4 控制台命令提示符

解释命令提示符有助于了解R何时准备好接受命令。下面列出了命令提示符的不同状态以及如何退出命令:

(1)控制台已准备好接受命令>

如果R准备好接受命令,则R控制台会显示>

当控制台收到命令时(通过直接键入控制台或从脚本编辑器(Ctrl-Enter)运行,R将尝试执行它。

运行后,控制台将显示结果并返回新>提示以等待新命令。

(2)控制台正在等待输入更多数据+

如果R仍在等待输入更多数据,因为它尚未完成,控制台将显示+提示。这意味着命令不完整。通常是因为括号或引号不成对。

(3)转义命令并获得新提示esc

如果无法弄清楚为什么命令没有运行,可以在控制台窗口内单击并按下esc以退出命令并返回新提示>


练习

  1. 尝试仅从脚本编辑器输入3 +,选中并运行它。找到一种方法>在控制台中恢复命令提示符。


8.与R中的数据交互

R通常用于处理大数据,因此只有在数据处理实战中理解R语言才有意义。我们之前已将两个文件下载到工作目录中。由于后期需要使用这些文件,因此我们需要花几分钟时间熟悉这些数据。

数据集

在这个示例数据集中,我们收集了来自12只小鼠的全脑样本,并且想要评估它们之间的表达差异。表达数据表示从12个脑样品的RNA测序获得的标准化计数数据。该数据作为二维矩阵存储在逗号分隔值(CSV)文件中,每行对应于基因,每列对应于样本

metadata

我们有另一个文件,我们在其中识别相关数据metadata的信息。我们的元数据也存储在CSV文件中。在此文件中,每行对应一个样本,每列包含有关每个样本的一些信息。

第一列包含行名称,请注意这些行名称与上面的表达数据文件中的列名称相同(尽管顺序不同)。接下来的几列包含有关我们样本的信息,这些信息允许我们对它们进行分类。例如,第二列包含每个样品的基因型信息。每个样品分为两类:Wt(野生型)或KO(淘汰)。在其余列中观察到哪些分类?

R特别擅长处理这类分类数据。数据不是简单地将该信息存储为文本,而是以特定的数据结构表示,该结构允许用户以快速有效的方式对数据进行排序和操作。当我们学习R中的不同课程时,我们将更详细地讨论这个问题!

9.最佳实践

在我们开始研究更复杂的概念并熟悉语言之前,我们想要指出一些关于使用R时最佳实践的事情,这将有助于组织项目:

  • 如果我们可以记录我们所做的一切,代码和工作流程就更具有可再现性。我们的最终目标不仅仅是“做事”,而是任何人都能轻松准确地复制我们的工作流程和结果。所有代码都应该在脚本编辑器中编写并保存到文件中,而不是在控制台中工作。

  • [R控制台]应主要用于检查对象,测试函数或寻求帮助。

  • 使用#标志进行注释。在R脚本中自由注释。这将有助于你和其他协作者了解每行代码(或代码块)的用途。#R忽略了a右侧的任何内容。如果你想要注释整段文本,则可以使用快捷键`Ctrl + Shift + C`。




    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多