欢迎来到本课程

在 R 中使用 data.table 进行数据表连接

Scott Ritchie

Postdoctoral Researcher in Systems Genomics

连接 data.table

  • 将两个 data.table 的信息合并为一个 data.table

在 R 中使用 data.table 进行数据表连接

课程概览

  • 第 1 章:用 merge() 进行连接

  • 第 2 章:data.table 工作流中的连接

  • 第 3 章:连接问题排查

  • 第 4 章:拼接与变形 data.table

在 R 中使用 data.table 进行数据表连接

表键(keys)

跨两张表关联信息的列

library(data.table)

demographics <- data.table(name = c("Trey", "Matthew", "Angela"), gender = c(NA, "M", "F"), age = c(54, 43, 39)) shipping <- data.table(name = c("Matthew", "Trey", "Angela"), address = c("7 Mill road", "12 High street", "33 Pacific boulevard"))

连接键示意图

在 R 中使用 data.table 进行数据表连接

在 R 会话中查看 `data.table`

tables() 会显示当前 R 会话中已加载的所有 data.table

tables()
           NAME NROW NCOL MB            COLS KEY
1: demographics    3    3  0 name,gender,age    
2:     shipping    3    2  0    name,address    
Total: 0MB
在 R 中使用 data.table 进行数据表连接

在 R 会话中查看 `data.table`

str() 可显示单个 data.table 中各列的类型

str(demographics)
Classes 'data.table' and 'data.frame':    3 obs. of  3 variables:
 $ name  : chr  "Trey" "Matthew" "Angela"
 $ gender: chr  NA "M" "F"
 $ age   : num  54 43 39
 - attr(*, ".internal.selfref")=<externalptr> 
在 R 中使用 data.table 进行数据表连接

在 R 会话中查看 `data.table`

demographics_all
         name sex age
  1:     Trey  NA  54
  2:  Matthew   M  43
  3:   Angela   F  39
  4: Michelle   F  63
  5:  Mohamed   M  26
 ---                 
102:  Patrick   M  27
103:      Wei   F  41
104:     Adam   M  33
105:  Somchai   M  53
106:     Alma   F  19
在 R 中使用 data.table 进行数据表连接

Passons à la pratique !

在 R 中使用 data.table 进行数据表连接

Preparing Video For Download...