【DataScience学习笔记】Coursera课程《数据科学家的工具箱》 约翰霍普金斯大学——Week2 Installing the Toolbox课堂笔记...

Coursera课程《数据科学家的工具箱》 约翰霍普金斯大学

Week2 Installing the Toolbox

Command Line Interface

基本上现在的每台计算机都带有某种形式的命令行界面。

  • Windows: Git Bash
  • Mac/Linux: Terminal

那么命令行界面能做什么呢?

  • 访问不同文件夹
  • 创建文件、文件夹和程序
  • 编辑文件、文件夹和程序
  • 运行计算机程序

CLI Commands

  • 在命令行界面,输入pwd再按回车,可以看到当前所在的目录路径,也叫工作目录的路径。所以pwd表示的是print working directory(输出工作路径)。
  • clear命令可以清除当前CLI窗口中的所有东西,类似matlab的clear命令。
  • ls命令会列出当前目录中包含的文件和文件夹,ls -a命令会输出所有的隐藏和未隐藏的文件。
jeff$ ls
Desktop Photos Music
jeff$ ls -a
Desktop Photos Music .Trash .DS_Store
jeff$
  • cd命令代表的是change directory(目录变更),它需要一个参数值,表示你要进入的目录。如果使用cd却不添加任何参数,那么它会直接将你带到你的主目录。而使用cd ..命令,它会进入上一级目录。
jeff$ cd Music/Debussy
jeff$ pwd
/Users/jeff/Music/Debussy
jeff$ cd..
jeff$ pwd
/Users/jeff/Music
jeff$ cd
jeff$ pwd
/Users/jeff
jeff$
  • mkdir命令表示的是make directory(创建目录),它实现的功能类似于右击创建新的文件夹。它需要一个参数来表示新建文件夹的名称。
jeff$ mkdir Documents
jeff$ ls
Desktop Photos Music Documents
jeff$
  • touch命令会创建一个空文件。
jeff$ touch test_file
jeff$ ls
Desktop Photos Music Documents test_file
jeff$
  • cp命令代表copy(复制)。假设你有一个文件,你想复制它,你需要做的是给cp命令加两个参数值。第一个参数值是你想复制的文件,第二个参数值是你想将它复制到的位置。
jeff$ cp test_file Documents
jeff$ cd Documents
jeff$ ls
test_file
jeff$ cd ..
jeff$

cp命令也可以用来复制文件夹的内容,不过这就必须使用-r的参数了。下面就是把Documents文件夹的内容复制到More_docs文件夹里了。

jeff$ mkdir More_docs
jeff$ cp -r Documents More_docs
jeff$ cd More_docs
jeff$ ls
test_file
jeff$ cd ..
jeff$
  • rm代表的是remove(删除),所以这个命令有点像delete命令。一般用来删除不想要的文件。
jeff$ ls
Desktop Photos Music Documents More_docs test_file
jeff$ rm test_file
jeff$ ls
Desktop Photos Music Documents More_docs
jeff$

同样地,也可以添加-r的参数来删除整个目录及内容。

  • mv代表的是move(移动),所以这个命令允许我们在目录之间转移文件。它也需要接受两个参数,第一个参数是需要移动的文件名,第二个参数是想要移动到的目录名称。

我们还可以使用mv命令来重命名文件。如果移动文件的时候换个名字,实际的效果就是重命名。也就是说把第二个参数换成新文件名。

  • echo命令会输出你提供的任意参数值。
jeff$ echo Hello World!
Hello World!
jeff$
  • date命令会输出今天的日期时间。
jeff$ date
Mon Nov 4 20:48:03 EST 2013
jeff$

Introduction to Git

版本控制系统的作用是按时间顺序记录你对某个或某组文件所做的所有修改,方便你之后找回某个特定版本,对数据科学家来说这是最常用的工具之一。

而Git是一个免费开源的版本控制系统,它是分布式的,因此可以迅速有效地处理各种规模的项目,它是目前应用最广泛的版本控制系统之一。它是由Linux系统的开发者创建的。

因为每一次向Git资源库的提交都会被标上提交者的用户名都会被标上提交者的用户名,所以一旦安装好了Git,就需要进行一下设置,输入你的用户名和电子邮箱。也就是下面这两行代码。

$ git config --global user.name "Your Name here"
$ git config --global user.email "your_email@example.com"

使用下面的命令,可以看到用户名和邮箱一些的相关信息。

$ git --list

而使用exit就可以退出git bash了。

$ exit

Introduction to Github

GitHub是一个提供与软件开发的网络主机服务,它使用Git版本控制软件作为核心驱动力,它能够让你在线开发项目,也能帮助你将项目提交到网上,方便其他人查阅和开发。

简单来说,它允许用户对本地资源库执行推送和拉取操作。对处于Git管理下的本地资源库,你可以将它们推送至网络上的远程资源库中,或是从远程资源库拉取回来。

它同时提供给每位用户一个主页,当中列出该用户所有的资源库,并且这些GitHub上的资源库也会备份在服务器上,以防你的本地库发生意外。

不过GitHub的核心竞争力还是在于它的社交功能,它允许用户互相关注,互相分享以及开发各自的项目,这才是GitHub强大的地方。

Creating a Github Repository

Creating a Local Copy

在GitHub的网页上创建好了仓库后,可以在本地创建一个备份。

  • 打开Git Bash
  • 在电脑里创建一个目标来存储这个仓库的备份。
$ mkdir ~/test-repo
  • 定位到这个新目录
$ cd ~/test-repo
  • 在当前目录初始化一个git仓库
$ git init
  • 将本地仓库指向远程服务器上的仓库,也就是把两个仓库连接起来
$ git remote add origin https://github.com/yourUserNameHere/test-repo.git

Clone the Repo

要克隆其他人的仓库的话,可以在网页上直接Fork,也可以通过git命令进行。

$ git clone https://github.com/yourUserNameHere/repoNameHere.git

Basic Git Commands

Pushing and pulling

1392594-20180922223058745-696185250.png

workspace,也就是我们本地的电脑工作区。

index,这个区域是告诉Git哪些文件需要进行版本控制。

local repository,里面都是经过了版本控制的本地文件。

remote repository,也就是GitHub上的远程仓库。

Adding

所以说,我们第一件事就是要把新文件纳入版本控制,也就是把它们添加到索引中,这样Git就知道这些文件需要被检测。

git add .

该命令会把所有新文件添加到你现在的工作目录。

git add -u

该命令会更新那些被改了名或被删除的文件。

git add -A

该命令则包含了上述两个命令的作用。

Committing

一旦添加进了索引,那么就可以把它们提交到本地资源库了。

git commit -m "message"

其中引号内的内容,是对这条提交的注释。

不过到这一步,还仅仅是一个本地操作。

Pushing

如果要把修改更新到GitHub,那么就在同样的目录下进行下面的命令。

git push

Branches

有时我们在做一个项目,可能会有很多人同时使用一个版本,我们不希望直接编辑那个被很多人同时使用的版本,或者觉得自己对这个文件做了很多次修改可能会破坏别人的成果,那么我们可以创建一个分支。

分支就是某个目录的一个复制品,我们可以在上面较为独立地进行修改。

所以创建一个新的分支的命令是

git checkout -b branchname

使用下面的命令,你可以随时查看你在哪个分支上工作

git branch

切换回主分支则使用下面的命令

git checkout master

Pull requests

当你准备做一个pull请求,或者把你的本地改动推送到远程资源库时,假设你正在一个不同的分支上工作,或者你正在一个从别人那里fork过来的仓库上工作,你可能会向把你开发的东西合并到原始仓库里,或是合并至原始分支。要达到这个目的,你需要发布一个pull请求,这是GitHub特有的功能。

所以我们应该先导GitHub的网页,进入你感兴趣的分支,再选择并进入了分支之后,再点击compare & pull request的按键。它就会向拥有那些分支或资源库的个人发送一个pull请求的提醒。拥有者是本人那自己就可以确定,是他人的话,如果他们认为你的修改是合理的,就会决定把你的请求整合到他们的仓库。

Basic Markdown

这个其实就是我写博客用的啦。本节课讲的都很基础,就不做笔记啦。

Installing R Packages

可以使用install.packages()命令来安装R的程序包。

比如说安装slidify程序包。

install.packages("slidify")

当然,也可以一行命令安装多个程序包。

如果是不是从镜像网CRAN下载程序包,比如说是从Bioconductor下载。

那么可以这样

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

然后下一次要从Bioconductor下载程序包时,就可以使用和install.packages类似的输入了。

biocLite(c("GenomicFeatures","AnnotationDbi"))

在安装完程序包后,还要载入程序包才能使用。这就需要library命令来告诉R要载入哪个程序包。

library(ggplot2)

注意,使用library的时候不要把程序包名放入引号里,不然就无法正确载入。

转载于:https://www.cnblogs.com/IvyWong/p/9691511.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值