美文网首页生信星球培训第八十期
学习小组Day6笔记--孔嘉豪

学习小组Day6笔记--孔嘉豪

作者: 孔嘉豪 | 来源:发表于2020-09-21 01:52 被阅读0次

    Day1 高效学习平台和方法推荐
    Day2-3 Linux基础
    Day4-6 R语言基础
    Day7 测序知识

    今日待解决问题:

    1. 镜像设置(复习)
    2. 安装和加载包
    3. dplyr五个基础函数
    4. dplyr两个实用技能
    5. dplyr处理关系数据

    1. 镜像设置


    参考给自己一个全新的R语言环境,也可用两行代码分别对应清华源和中科大源:

    options("repos" = (CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
    options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/") 
    

    2. 安装和加载包


    由于电脑用户名设置的中文,安装Rstudio时,更改设置(见学习小组Day4笔记--孔嘉豪)加切换语言才能正常使用。但是今天要下包的时候就不停报错,显示无法读取路径(试了一整个下午😂。
    解决办法——找到Rprofile.csv的文件,用vscode或记事本打开,添加一段代码

    .libPaths(c('C://R',.libPaths()))
    

    👆意思是更改下载包的路径到C盘的R文件夹中,注意的是避免路径中出现任何中文,包括Unicode转码后的中文也不可以。

    install.packages("包") #安装包
    library(d包) #加载包
    

    👆install.packages(“包”)也可以是BiocManager::install(“包”)。取决于安装包存在于CRAN网站还是Biocductor。可以谷歌到。

    3. dplyr五个基础函数


    tidyverse是一组处理与可视化R包的集合,其中ggplot2与dplyr最广为人知ggplot2为可视化数据;dplyr为数据操作语法。我们下的就是dplyr,用来数据处理

                A           B            C           D           E  
    1          5.1         3.5          1.4         0.2          X 
    2          4.9         3.0          1.4         0.2          X
    3          7.0         3.2          4.7         1.4          Y
    4          6.4         3.2          4.5         1.5          Y
    5          6.3         3.3          6.0         2.5          Z
    6          5.8         2.7          5.1         1.9          Z
    

    3.1 新增列 mutate()

    mutate(文件名, new = A * B)  #新增列,可基础计算
    

    3.2 筛选列 select()

    vars <- c("A", "B")  #变量vars赋值
    select(文件名, A, B, c(1, 5), one_of(vars))  #按列名,元素位置,vars变量筛选
    

    3.3 筛选行 filter()

    filter(文件名, E == "X")  #按行内容筛选
    filter(文件名, E == "X"& A > 5 )  #附加筛选条件
    filter(文件名, E %in% c("X","Y"))  #多重内容筛选
    

    3.4 列排序 arrange()

    arrange(文件名, A)  #默认从小到大排序
    arrange(文件名, desc(A))  #从大到小排
    

    3.5 汇总 summarise()

    summarise(文件名, mean(A), sd(B))  #计算A的均数和B的标准差
    summarise(group_by(文件名, E), mean(A), sd(B))  #按E列分组后,计算均数和标准差
    

    4. dplyr两个实用技能


    4.1 管道操作

    > 文件名 %>% 
    + group_by(E) %>% 
    + summarise(mean(A), sd(B))  #等同于 3.5
    

    4.2 统计

    count(文件名, E)  #统计E列同字符串的个数
    

    5. dplyr处理关系数据


    options(stringsAsFactors = F)  #字符不转换为因子
    

    5.1 交集 inner_join()

    inner_join(文件1, 文件2, by = "A")
    

    5.2 左连 left_join()

    left_join(文件1, 文件2, by = "A")  #在文件1基础上,将文件2向左并
    #不写 by = “x” 的话系统也能自动识别可以合并的列
    

    5.3 全连 full_join()

    full_join( 文件1, 文件2, by = 'A')
    

    5.4 半连接 semi_join()

    semi_join(x = 文件1, y = 文件2, by = 'A')  #仅返回两表能够匹配的数据
    

    5.5 反连接 anti_join()

    anti_join(x = 文件1, y = 文件2, by = 'A')  #返回两表不能够匹配的数据
    

    5.6 简单合并 bind_rows()   bind_cols()

    bind_rows(文件1, 文件2)  #合并行
    bind_cols(文件1, 文件2)  #合并列
    

    相关文章

      网友评论

        本文标题:学习小组Day6笔记--孔嘉豪

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