生信星球第12期 Day6-小梦想在努力

继续学R!

  • 1.前言
  • 2.安装tidyr
  • 3.数据框小常识
  • 4.认识tidyr
  • 5.reshape data
  • 6.Handle Missing Values
  • 7.Expand Tables
  • 8.split cells(选修)
    第12期Day6

1.前言

R包都有自己的说明书(cheatsheet)。

2.安装tidyr

(1)获取一个R包的小抄

公众号回复最偷懒了,不过不够优秀。。。

(2)初步了解tidyr

①数据框的变形
②处理数据框中的空值
③根据一个表格衍生出其他表格
④实现行或列的分割和合并
把要用的数据处理成标准而统一的数据框(Tidy Data,下面有解释),才能进行进一步的数据处理和作图

(3)极简安装

①打开RStudio,设置好工作环境,输入library(tidyr),没有就报错。

设置工作环境都没记住,丢人!

②下载安装tidyr。
命令是 install.packages("tidyr")

  • 下载很慢,只要控制台不出现>,就一直等着

事实证明,确实比较慢

安装完是这样

运行一下看看,library(tidyr)
没报错就是成功

3.数据框

(1)新建数据框

这里直接把新建的数据框赋值给了a


命令和输出效果

命令的细节

新建一个数据框并赋值给bioplanet这个变量(赋值符号<-还记得嘛)括号里是“列名”=列值,这里列名要加双引号。这里涉及的几个给列填充数值的函数有
rep,重复,括号中填要重复的字符和重复次数。
paste,连接两个字符串,括号要填两个代连接字符并指定分隔符(sep),没有分隔符就填sep=“”。
1:3表示从1到三。如需一列中需要填入三个无规律的数字,可以用向量c(1,3,4),同样如果填的是字符串也需要加双引号,例如c("doudou","huahua","xiaoyu")。
2.了解概念:key-value--“键值对” ,表示一种对应关系。“键”和“值”都是列名,如SampleName和Expression的对应。
3.函数后面一般都要加括号,括号里第一个参数是都数据框名
4.字符串要加双引号(行名和列名也是字符串,但是可以不用加),其他单元格(姑且这么叫了)里出现的字符串要加。
行 raw
列 column,简化写法为col ——生信星球

以上慢慢理解吧。

4.认识tidyr

学习了。

这是一种组织表格数据的方式,提供了一种能够跨包使用的“统一”的数据格式。
什么叫“统一”?
每个变量(variable)占一列,每个情况(case,姑且这么翻译)和观测值(observation)占一行。
举个栗子——生信星球

一目了然

5.reshape data

gather:我就是刚才的魔法棒
spread:我能让tidy data一夜回到解放前。

截图来自小抄

在这里如何复制上图中的数据?(比较特殊的一点是列名是数字,这个还没碰见过,因此对它这个列名动了一点手脚,不管给他们加双引号、单引号还是反引号(英文模式下的1前面那个键),都没有报错!但是不加引号是不行滴。

命令

命令及效果

命令特写

需要变化

命令

gather括号里的分别是:
数据框名,需合并的列名(两个),合并后的key列名,value列名。
其中,需合并的列名也可以列在最后(其实个顺序才是默认的),key=和value=也可以省略(我爱偷懒),如果按照上面小抄的命令括号里那个顺序,省略了就会报错。

偷懒做法

如此。

6.Handle Missing Values

处理丢失的数据。就是某些单元格有空值的情况。
三种处理方式:
(1).drop。删除整行。
(2).fill。根据上下文(瞎)蒙一个。
(3).replace。同一列的空值填上同一个数。

小抄截图

csv这么牛么?

命令

区分大小写

自动填充和替换

填充和替换效果图

7.Expand Tables

①complete

小抄截图

complete的命令

效果图

3个空值

填充

②expand

(列出每列值所有可能的组合--根据下面的示例来理解这句话)
来看示例(以前年纪小不懂事,数据框名胡乱取的):
示例数据(就是刚才新建出来的数据框a):

第1次的a值

原来就是换了个pin2的名字。。。懵B了半天。。。

expand的命令

效果图。也要注意大小写,错了好几遍才写对命令

8.split cells(选修)

①分割分两种

把一列拆成两列。目测原列必须要有分隔符才行啊好像。

小抄截图

按列和按行分割

②合并
合并小抄截图

合并

你可能感兴趣的:(生信星球第12期 Day6-小梦想在努力)