
168
|
第
5
章
patient_data %>%
select(-patient_id, -dosage) %>%
cor()
#> pre post
#> pre 1.000 -0.289
#> post -0.289 1.000
5.26 合并两个数据框
5.26.1 问题
你需要将两个数据框的内容合并到一个数据框中。
5.26.2 解决方案
调用 cbind 函数并排合并两个数据框的列:
all.cols <- cbind(df1, df2)
调用 rbind 函数“堆叠”两个数据框的行:
all.rows <- rbind(df1, df2)
5.26.3 讨论
你可以通过以下两种方式之一合并数据框:通过并排放置列以创建更宽的数据框;或者
通过“堆叠”行来创建更长的数据框。
cbind 函数将并排合并数据框:
df1 <- data.frame(a = c(1,2))
df2 <- data.frame(b = c(7,8))
cbind(df1, df2)
#> a b
#> 1 1 7
#> 2 2 8
你通常会将具有相同高度(行数)的列合并在一起。然而,从技术上讲,cbind 不需要
匹配的高度。如果一个数据框很短,R 将调用循环规则以根据需要扩展短列(参见 5.3
节),这可能是你想要的,也可能不是。
rbind 函数将“堆叠”两个数据框的行:
df1 <- data.frame(x = c("a", "a"), y = c(5, 6))
df2 <- data.frame(x = c("b", "b"), y ...