学习小组Day6笔记--魏麻将

R包什么?

R包是R函数,编码和样本数据的集合, 它们存储在R环境中的名为“library”的目录下。 默认情况下,R在安装过程中安装一组软件包。当需要某些特定的目的时,也可根据需要添加更多的包。 当我们启动R控制台时,默认情况下只有默认软件包可用。 已经安装的其他软件包必须明确加载才能被要使用的R程序使用。

注意:学生信,R语言必学的原因是丰富的图表和Biocductor上面的各种生信分析R包。

安装和加载R包

  • 镜像设置
    最基础的是在Rstudio中进行了设置(R镜像是为了方便世界各地的使用者下载R软件及相关软件包,在各地设置的镜像。但是需要去官网下载,下载速度太慢。所以,选择离你最近的镜像,你下载R软件或R包的速度相对较快)。后来需要自定义我们的下载镜像,主要通过两行代码进行:
option ("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")

下次再打开Rstudio,试试options()$BioC_mirror检查是否是国内镜像系统。如果发现不是得花,需要进行高级设置。
R的配置文件 .Rprofile :R中经常会使用一些命令,而且需要重复输入,非常麻烦。如果能够一打开R就直接使用会方便很多。通过配置一个.Rprofile文件,可以达到我们的目的。操作如下:

file.edit('~/.Rprofile')

再添加options两行代码,保存重启即可

补充:.Renviron:是给R包一个家,它是为了设置R的环境变量。

安装加载R包

options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/")) 
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/") 
install.packages("dplyr")
library(dplyr)

示例数据如下:使用内置数据集iris的简化版

test <- iris[c(1:2,51:52,101:102),]

什么是iris数据集:


iris数据集.png

dplyr五个基础函数

dplyr包主要用于数据清洗和整理,主要功能有:行选择、列选择、统计汇总、窗口函数、数据框交集等是非常高效、友好的数据处理包.

  • mutate(),新增列
mutate(test, new = Sepal.Length * Sepal.Width)
新增一个new列,内容是Sepal.Length * Sepal.Width(长度*宽度)
  • select(),按列筛选
    1 按列号筛选
    select (test,()),可以是标量,可以是向量
    2 按列名筛选
  • filter()筛选行
filter(test, Species == "setosa") 筛选行为物种为setosa的物种
 filter(test, Species == "setosa"&Sepal.Length > 5 ) 筛选物种为setosa并且Sepal.Length > 5的行。如果中间是|,就是筛选的或者
filter(test, Species %in% c("setosa","versicolor"))筛选,物种符合setosa,versicolor的行

注意!!!x %in% y 的意思是“对x里的每个元素进行判断,判断它是否在y中存在,存在就返回TRUE,不存在就返回FALSE”,多的元素在前,少的元素在后。

  • arrange(),按某1列或某几列对整个表格进行排序
    arrange(test, Sepal.Length)#默认从小到大排序
    arrange(test, desc(Sepal.Length))#用desc从大到小
  • summarise():汇总
summarise(test, mean(Sepal.Length), sd(Sepal.Length))# 计算Sepal.Length的平均值和标准差
summarise(group_by(test, Species),mean(Sepal.Length), sd(Sepal.Length)) **先按照先按照Species分组,计算每组Sepal.Length的平均值和标准差**

其中, A tibble: 3 x 3 =行*列
Groups: Species [3] 以。。进行的分组

dplyr两个实用技能

管道操作 %>%

magrittr包,主要定义了4个管道操作符,分另是%>%, %T>%, %$% 和 %<>%。其中,操作符%>%是最常用的,其他3个操作符,与%>%类似,在特殊的使用场景会起到更好的作用。
[R中的管道操作符%>%]https://www.jianshu.com/p/7d034789da41

count统计某列的unique值

count(test,Species) 不同物种中的数量

dplyr处理关系数据

data.frame()函数用法:将两个表进行连接

test1 <- data.frame(x = c('b','e','f','x'), z = c("A","B","C",'D')  stringsAsFactors = F)

stringsAsFactors=FALSE作用:用read.table和其衍生品比如read.csv read.delim,R会自动把字符串string的列辨认成factor。比如你有一个全班成绩数据集,第一列名字,第二列性别,第三列语文成绩,第四列数学成绩。那么第一列和第二列如果你不告诉R
stringsAsFactors=FALSE 那么R就把这两列认成因子模式factor了。

  • 內连接inner_join,取交集
    指仅仅保留x,y中相匹配的观测,相当于取了个交集;以 by="x"为基准,下同
    inner_join(test1, test2, by = "x")
  • 外连接
    1 左连接 left_join
    y中未匹配的观测丢弃,x中未匹配的观测保留,y中以NA填充
    left_join(test1, test2, by = 'x')
    2 全连full_join
    x,y中观测全部保留,相当于取了并集
    full_join( test1, test2, by = 'x')
  • 半连接:semi_join
    保留x中与y匹配的观测,它与内连接的不同在于,取交集但是并不合并y而仅仅是保留了x,y的作用是做了筛选而已
    semi_join(x = test1, y = test2, by = 'x')
  • 反连接:anti_join
    是半连接的反向操作,用y做筛选,找出非相交的部分保留下来
    anti_join(x = test2, y = test1, by = 'x')
  • 简单合并
    在相当于base包里的cbind()函数和rbind()函数;
    注意,bind_rows()函数需要两个表格列数相同
    而bind_cols()函数则需要两个数据框有相同的行数
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343