首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >合并三个不同行长的dfs

合并三个不同行长的dfs
EN

Stack Overflow用户
提问于 2022-05-06 20:57:45
回答 2查看 126关注 0票数 1

我需要根据共享列“示例”合并三个独立的DFs ("factors_sed“、"resp”和"npoc_sed")。每个DF包含不同数量的行(一些分析有几个副本),但是我需要的总数是第一个DF,"factors_sed“。

到目前为止,我有我的前两个dfs,"factors_sed“和"resp”(dput()在下面)。"factors_sed“中的216个数字表示复制。我想复制"resp“中的列以匹配"factors_sed”。

代码语言:javascript
复制
library(dplyr)
factors_try <- merge(factors_sed, resp, by="Samples", all=T)

但这给了我一个df,有524个观测值。

我的第二个问题将是将第三个DF "npoc_sed“(288个obs)合并到由"factors_sed”和"resp“生成的新的、正确合并的df中,方法是删除重复项。从本质上讲,第一个问题是相反的。

我知道它将需要使用dplyr的不同的连接,但老实说,我现在很困惑。我感谢任何帮助!

代码语言:javascript
复制
> dput(factors_sed)
structure(list(SampleID = c("Sample_S19S_0006_Sed_Field_ICR.D_P2", 
"Sample_S19S_0006_Sed_Field_ICR.M_P2", "Sample_S19S_0006_Sed_Field_ICR.U_P2", 
"Sample_S19S_0009_Sed_Field_ICR.M_P2", "Sample_S19S_0009_Sed_Field_ICR.U_P2", 
"Sample_S19S_0011_Sed_Field_ICR.D_P2", "Sample_S19S_0011_Sed_Field_ICR.M_P2", 
"Sample_S19S_0011_Sed_Field_ICR.U_P2", "Sample_S19S_0012_Sed_Field_ICR.D_P2", 
"Sample_S19S_0012_Sed_Field_ICR.M_P2", "Sample_S19S_0012_Sed_Field_ICR.U_P2", 
"Sample_S19S_0013_Sed_Field_ICR.D_P2", "Sample_S19S_0013_Sed_Field_ICR.M_P2", 
"Sample_S19S_0013_Sed_Field_ICR.U_P2", "Sample_S19S_0014_Sed_Field_ICR.D_P2", 
"Sample_S19S_0014_Sed_Field_ICR.M_P2", "Sample_S19S_0014_Sed_Field_ICR.U_P2", 
"Sample_S19S_0015_Sed_Field_ICR.D_P2", "Sample_S19S_0015_Sed_Field_ICR.M_P2", 
"Sample_S19S_0015_Sed_Field_ICR.U_P2", "Sample_S19S_0016_Sed_Field_ICR.D_P2", 
"Sample_S19S_0016_Sed_Field_ICR.M_P2", "Sample_S19S_0016_Sed_Field_ICR.U_P1", 
"Sample_S19S_0017_Sed_Field_ICR.D_P2", "Sample_S19S_0017_Sed_Field_ICR.M_P2", 
"Sample_S19S_0017_Sed_Field_ICR.U_P2", "Sample_S19S_0018_Sed_Field_ICR.D_P1", 
"Sample_S19S_0018_Sed_Field_ICR.M_P2", "Sample_S19S_0018_Sed_Field_ICR.U_P2", 
"Sample_S19S_0019_Sed_Field_ICR.D_P2", "Sample_S19S_0019_Sed_Field_ICR.M_P2", 
"Sample_S19S_0019_Sed_Field_ICR.U_P2", "Sample_S19S_0020_Sed_Field_ICR.D_P2", 
"Sample_S19S_0020_Sed_Field_ICR.M_P2", "Sample_S19S_0020_Sed_Field_ICR.U_P2", 
"Sample_S19S_0021_Sed_Field_ICR.D_P2", "Sample_S19S_0021_Sed_Field_ICR.M_P2", 
"Sample_S19S_0021_Sed_Field_ICR.U_P2", "Sample_S19S_0022_Sed_Field_ICR.D_P2", 
"Sample_S19S_0022_Sed_Field_ICR.M_P2", "Sample_S19S_0022_Sed_Field_ICR.U_P2", 
"Sample_S19S_0023_Sed_Field_ICR.D_P2", "Sample_S19S_0023_Sed_Field_ICR.M_P2", 
"Sample_S19S_0023_Sed_Field_ICR.U_P2", "Sample_S19S_0024_Sed_Field_ICR.M_P2", 
"Sample_S19S_0025_Sed_Field_ICR.D_P2", "Sample_S19S_0025_Sed_Field_ICR.M_P1", 
"Sample_S19S_0025_Sed_Field_ICR.U_P2", "Sample_S19S_0026_Sed_Field_ICR.M_P2", 
"Sample_S19S_0026_Sed_Field_ICR.U_P2", "Sample_S19S_0027_Sed_Field_ICR.D_P2", 
"Sample_S19S_0027_Sed_Field_ICR.M_P2", "Sample_S19S_0027_Sed_Field_ICR.U_P2", 
"Sample_S19S_0028_Sed_Field_ICR.D_P2", "Sample_S19S_0028_Sed_Field_ICR.M_P1", 
"Sample_S19S_0028_Sed_Field_ICR.U_P1", "Sample_S19S_0029_Sed_Field_ICR.D_P2", 
"Sample_S19S_0029_Sed_Field_ICR.M_P2", "Sample_S19S_0029_Sed_Field_ICR.U_P2", 
"Sample_S19S_0030_Sed_Field_ICR.U_P2", "Sample_S19S_0031_Sed_Field_ICR.D_P2", 
"Sample_S19S_0031_Sed_Field_ICR.M_P2", "Sample_S19S_0031_Sed_Field_ICR.U_P2", 
"Sample_S19S_0032_Sed_Field_ICR.D_P2", "Sample_S19S_0032_Sed_Field_ICR.M_P2", 
"Sample_S19S_0032_Sed_Field_ICR.U_P2", "Sample_S19S_0034_Sed_Field_ICR.D_P2", 
"Sample_S19S_0034_Sed_Field_ICR.M_P2", "Sample_S19S_0034_Sed_Field_ICR.U_P2", 
"Sample_S19S_0035_Sed_Field_ICR.D_P2", "Sample_S19S_0035_Sed_Field_ICR.M_P1", 
"Sample_S19S_0035_Sed_Field_ICR.U_P2", "Sample_S19S_0036_Sed_Field_ICR.D_P1", 
"Sample_S19S_0036_Sed_Field_ICR.M_P2", "Sample_S19S_0036_Sed_Field_ICR.U_P2", 
"Sample_S19S_0037_Sed_Field_ICR.U_P2", "Sample_S19S_0038_Sed_Field_ICR.D_P2", 
"Sample_S19S_0038_Sed_Field_ICR.M_P2", "Sample_S19S_0039_Sed_Field_ICR.D_P2", 
"Sample_S19S_0039_Sed_Field_ICR.M_P1", "Sample_S19S_0039_Sed_Field_ICR.U_P2", 
"Sample_S19S_0040_Sed_Field_ICR.U_P2", "Sample_S19S_0041_Sed_Field_ICR.D_P2", 
"Sample_S19S_0041_Sed_Field_ICR.M_P2", "Sample_S19S_0041_Sed_Field_ICR.U_P2", 
"Sample_S19S_0042_Sed_Field_ICR.D_P2", "Sample_S19S_0042_Sed_Field_ICR.M_P2", 
"Sample_S19S_0042_Sed_Field_ICR.U_P2", "Sample_S19S_0043_Sed_Field_ICR.D_P2", 
"Sample_S19S_0043_Sed_Field_ICR.M_P2", "Sample_S19S_0043_Sed_Field_ICR.U_P2", 
"Sample_S19S_0044_Sed_Field_ICR.D_P2", "Sample_S19S_0044_Sed_Field_ICR.U_P2", 
"Sample_S19S_0046_Sed_Field_ICR.D_P1", "Sample_S19S_0046_Sed_Field_ICR.M_P1", 
"Sample_S19S_0046_Sed_Field_ICR.U_P1", "Sample_S19S_0049_Sed_Field_ICR.D_P2", 
"Sample_S19S_0049_Sed_Field_ICR.M_P2", "Sample_S19S_0049_Sed_Field_ICR.U_P2", 
"Sample_S19S_0052_Sed_Field_ICR.D_P2", "Sample_S19S_0052_Sed_Field_ICR.M_P2", 
"Sample_S19S_0052_Sed_Field_ICR.U_P2", "Sample_S19S_0053_Sed_Field_ICR.D_P2", 
"Sample_S19S_0053_Sed_Field_ICR.M_P2", "Sample_S19S_0053_Sed_Field_ICR.U_P2", 
"Sample_S19S_0054_Sed_Field_ICR.D_P2", "Sample_S19S_0054_Sed_Field_ICR.M_P2", 
"Sample_S19S_0054_Sed_Field_ICR.U_P2", "Sample_S19S_0055_Sed_Field_ICR.D_P2", 
"Sample_S19S_0055_Sed_Field_ICR.M_P2", "Sample_S19S_0055_Sed_Field_ICR.U_P2", 
"Sample_S19S_0056_Sed_Field_ICR.D_P2", "Sample_S19S_0056_Sed_Field_ICR.M_P2", 
"Sample_S19S_0056_Sed_Field_ICR.U_P2", "Sample_S19S_0057_Sed_Field_ICR.D_P2", 
"Sample_S19S_0057_Sed_Field_ICR.M_P2", "Sample_S19S_0057_Sed_Field_ICR.U_P2", 
"Sample_S19S_0058_Sed_Field_ICR.D_P2", "Sample_S19S_0058_Sed_Field_ICR.U_P2", 
"Sample_S19S_0060_Sed_Field_ICR.D_P2", "Sample_S19S_0060_Sed_Field_ICR.M_P2", 
"Sample_S19S_0060_Sed_Field_ICR.U_P2", "Sample_S19S_0061_Sed_Field_ICR.D_P2", 
"Sample_S19S_0061_Sed_Field_ICR.M_P2", "Sample_S19S_0063_Sed_Field_ICR.M_P2", 
"Sample_S19S_0063_Sed_Field_ICR.U_P2", "Sample_S19S_0064_Sed_Field_ICR.D_P2", 
"Sample_S19S_0064_Sed_Field_ICR.M_P2", "Sample_S19S_0065_Sed_Field_ICR.D_P2", 
"Sample_S19S_0065_Sed_Field_ICR.M_P2", "Sample_S19S_0065_Sed_Field_ICR.U_P2", 
"Sample_S19S_0066_Sed_Field_ICR.D_P2", "Sample_S19S_0066_Sed_Field_ICR.M_P2", 
"Sample_S19S_0066_Sed_Field_ICR.U_P2", "Sample_S19S_0067_Sed_Field_ICR.D_P2", 
"Sample_S19S_0067_Sed_Field_ICR.M_P2", "Sample_S19S_0067_Sed_Field_ICR.U_P2", 
"Sample_S19S_0068_Sed_Field_ICR.M_P2", "Sample_S19S_0068_Sed_Field_ICR.U_P2", 
"Sample_S19S_0069_Sed_Field_ICR.D_P2", "Sample_S19S_0069_Sed_Field_ICR.M_P2", 
"Sample_S19S_0069_Sed_Field_ICR.U_P2", "Sample_S19S_0070_Sed_Field_ICR.D_P2", 
"Sample_S19S_0070_Sed_Field_ICR.M_P2", "Sample_S19S_0070_Sed_Field_ICR.U_P2", 
"Sample_S19S_0071_Sed_Field_ICR.D_P2", "Sample_S19S_0071_Sed_Field_ICR.M_P2", 
"Sample_S19S_0071_Sed_Field_ICR.U_P2", "Sample_S19S_0072_Sed_Field_ICR.D_P2", 
"Sample_S19S_0072_Sed_Field_ICR.M_P2", "Sample_S19S_0072_Sed_Field_ICR.U_P2", 
"Sample_S19S_0073_Sed_Field_ICR.D_P2", "Sample_S19S_0073_Sed_Field_ICR.M_P2", 
"Sample_S19S_0073_Sed_Field_ICR.U_P2", "Sample_S19S_0074_Sed_Field_ICR.D_P2", 
"Sample_S19S_0074_Sed_Field_ICR.M_P2", "Sample_S19S_0074_Sed_Field_ICR.U_P2", 
"Sample_S19S_0075_Sed_Field_ICR.D_P2", "Sample_S19S_0075_Sed_Field_ICR.M_P2", 
"Sample_S19S_0075_Sed_Field_ICR.U_P2", "Sample_S19S_0076_Sed_Field_ICR.D_P2", 
"Sample_S19S_0076_Sed_Field_ICR.M_P1", "Sample_S19S_0076_Sed_Field_ICR.U_P1", 
"Sample_S19S_0077_Sed_Field_ICR.D_P2", "Sample_S19S_0077_Sed_Field_ICR.M_P2", 
"Sample_S19S_0077_Sed_Field_ICR.U_P2", "Sample_S19S_0078_Sed_Field_ICR.D_P2", 
"Sample_S19S_0078_Sed_Field_ICR.M_P2", "Sample_S19S_0078_Sed_Field_ICR.U_P2", 
"Sample_S19S_0079_Sed_Field_ICR.D_P2", "Sample_S19S_0079_Sed_Field_ICR.M_P2", 
"Sample_S19S_0079_Sed_Field_ICR.U_P2", "Sample_S19S_0080_Sed_Field_ICR.D_P2", 
"Sample_S19S_0080_Sed_Field_ICR.M_P2", "Sample_S19S_0080_Sed_Field_ICR.U_P2", 
"Sample_S19S_0081_Sed_Field_ICR.M_P2", "Sample_S19S_0081_Sed_Field_ICR.U_P2", 
"Sample_S19S_0082_Sed_Field_ICR.D_P2", "Sample_S19S_0082_Sed_Field_ICR.M_P2", 
"Sample_S19S_0082_Sed_Field_ICR.U_P2", "Sample_S19S_0083_Sed_Field_ICR.D_P2", 
"Sample_S19S_0083_Sed_Field_ICR.M_P2", "Sample_S19S_0083_Sed_Field_ICR.U_P2", 
"Sample_S19S_0084_Sed_Field_ICR.D_P2", "Sample_S19S_0084_Sed_Field_ICR.M_P2", 
"Sample_S19S_0084_Sed_Field_ICR.U_P2", "Sample_S19S_0086_Sed_Field_ICR.D_P2", 
"Sample_S19S_0086_Sed_Field_ICR.M_P2", "Sample_S19S_0086_Sed_Field_ICR.U_P2", 
"Sample_S19S_0089_Sed_Field_ICR.D_P2", "Sample_S19S_0089_Sed_Field_ICR.M_P2", 
"Sample_S19S_0089_Sed_Field_ICR.U_P2", "Sample_S19S_0090_Sed_Field_ICR.D_P2", 
"Sample_S19S_0090_Sed_Field_ICR.M_P2", "Sample_S19S_0090_Sed_Field_ICR.U_P2", 
"Sample_S19S_0091_Sed_Field_ICR.D_P2", "Sample_S19S_0091_Sed_Field_ICR.M_P2", 
"Sample_S19S_0091_Sed_Field_ICR.U_P2", "Sample_S19S_0092_Sed_Field_ICR.D_P2", 
"Sample_S19S_0092_Sed_Field_ICR.M_P1", "Sample_S19S_0092_Sed_Field_ICR.U_P2", 
"Sample_S19S_0096_Sed_Field_ICR.M_P2", "Sample_S19S_0097_Sed_Field_ICR.D_P2", 
"Sample_S19S_0097_Sed_Field_ICR.U_P2", "Sample_S19S_0098_Sed_Field_ICR.D_P2", 
"Sample_S19S_0098_Sed_Field_ICR.M_P2", "Sample_S19S_0098_Sed_Field_ICR.U_P2", 
"Sample_S19S_0099_Sed_Field_ICR.D_P2", "Sample_S19S_0099_Sed_Field_ICR.M_P2", 
"Sample_S19S_0099_Sed_Field_ICR.U_P2", "Sample_S19S_0100_Sed_Field_ICR.D_P2", 
"Sample_S19S_0100_Sed_Field_ICR.M_P2", "Sample_S19S_0100_Sed_Field_ICR.U_P2", 
"Sample_S19S_0001_Sed_Field_ICR.D_P2", "Sample_S19S_0001_Sed_Field_ICR.M_P2", 
"Sample_S19S_0001_Sed_Field_ICR.U_P2"), Type = c("Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment", "Sediment", 
"Sediment", "Sediment", "Sediment", "Sediment", "Sediment"), 
    Samples = c("S19S_0006", "S19S_0006", "S19S_0006", "S19S_0009", 
    "S19S_0009", "S19S_0011", "S19S_0011", "S19S_0011", "S19S_0012", 
    "S19S_0012", "S19S_0012", "S19S_0013", "S19S_0013", "S19S_0013", 
    "S19S_0014", "S19S_0014", "S19S_0014", "S19S_0015", "S19S_0015", 
    "S19S_0015", "S19S_0016", "S19S_0016", "S19S_0016", "S19S_0017", 
    "S19S_0017", "S19S_0017", "S19S_0018", "S19S_0018", "S19S_0018", 
    "S19S_0019", "S19S_0019", "S19S_0019", "S19S_0020", "S19S_0020", 
    "S19S_0020", "S19S_0021", "S19S_0021", "S19S_0021", "S19S_0022", 
    "S19S_0022", "S19S_0022", "S19S_0023", "S19S_0023", "S19S_0023", 
    "S19S_0024", "S19S_0025", "S19S_0025", "S19S_0025", "S19S_0026", 
    "S19S_0026", "S19S_0027", "S19S_0027", "S19S_0027", "S19S_0028", 
    "S19S_0028", "S19S_0028", "S19S_0029", "S19S_0029", "S19S_0029", 
    "S19S_0030", "S19S_0031", "S19S_0031", "S19S_0031", "S19S_0032", 
    "S19S_0032", "S19S_0032", "S19S_0034", "S19S_0034", "S19S_0034", 
    "S19S_0035", "S19S_0035", "S19S_0035", "S19S_0036", "S19S_0036", 
    "S19S_0036", "S19S_0037", "S19S_0038", "S19S_0038", "S19S_0039", 
    "S19S_0039", "S19S_0039", "S19S_0040", "S19S_0041", "S19S_0041", 
    "S19S_0041", "S19S_0042", "S19S_0042", "S19S_0042", "S19S_0043", 
    "S19S_0043", "S19S_0043", "S19S_0044", "S19S_0044", "S19S_0046", 
    "S19S_0046", "S19S_0046", "S19S_0049", "S19S_0049", "S19S_0049", 
    "S19S_0052", "S19S_0052", "S19S_0052", "S19S_0053", "S19S_0053", 
    "S19S_0053", "S19S_0054", "S19S_0054", "S19S_0054", "S19S_0055", 
    "S19S_0055", "S19S_0055", "S19S_0056", "S19S_0056", "S19S_0056", 
    "S19S_0057", "S19S_0057", "S19S_0057", "S19S_0058", "S19S_0058", 
    "S19S_0060", "S19S_0060", "S19S_0060", "S19S_0061", "S19S_0061", 
    "S19S_0063", "S19S_0063", "S19S_0064", "S19S_0064", "S19S_0065", 
    "S19S_0065", "S19S_0065", "S19S_0066", "S19S_0066", "S19S_0066", 
    "S19S_0067", "S19S_0067", "S19S_0067", "S19S_0068", "S19S_0068", 
    "S19S_0069", "S19S_0069", "S19S_0069", "S19S_0070", "S19S_0070", 
    "S19S_0070", "S19S_0071", "S19S_0071", "S19S_0071", "S19S_0072", 
    "S19S_0072", "S19S_0072", "S19S_0073", "S19S_0073", "S19S_0073", 
    "S19S_0074", "S19S_0074", "S19S_0074", "S19S_0075", "S19S_0075", 
    "S19S_0075", "S19S_0076", "S19S_0076", "S19S_0076", "S19S_0077", 
    "S19S_0077", "S19S_0077", "S19S_0078", "S19S_0078", "S19S_0078", 
    "S19S_0079", "S19S_0079", "S19S_0079", "S19S_0080", "S19S_0080", 
    "S19S_0080", "S19S_0081", "S19S_0081", "S19S_0082", "S19S_0082", 
    "S19S_0082", "S19S_0083", "S19S_0083", "S19S_0083", "S19S_0084", 
    "S19S_0084", "S19S_0084", "S19S_0086", "S19S_0086", "S19S_0086", 
    "S19S_0089", "S19S_0089", "S19S_0089", "S19S_0090", "S19S_0090", 
    "S19S_0090", "S19S_0091", "S19S_0091", "S19S_0091", "S19S_0092", 
    "S19S_0092", "S19S_0092", "S19S_0096", "S19S_0097", "S19S_0097", 
    "S19S_0098", "S19S_0098", "S19S_0098", "S19S_0099", "S19S_0099", 
    "S19S_0099", "S19S_0100", "S19S_0100", "S19S_0100", "S19S_0001", 
    "S19S_0001", "S19S_0001")), row.names = c(NA, -216L), class = "data.frame")

> dput(resp)
structure(list(rate_mg_per_L_per_h = c(15.22, 5.26, 4.91, 7.32, 
7.04, 1.43, 6.28, 0.83, 13.44, 3.18, 6.51, 4.16, 2.89, 3.75, 
4.03, 10.92, 0.12, 26.57, 7.68, 1.85, 1.95, 5.29, 3.58, 2.87, 
0.39, 14.6, 1.23, 8.76, 3.7, 5.75, 4.55, 3.3, 32.74, 15.66, 16.44, 
1.93, 0.67, 5.16, 5.06, 10.88, 6.92, 1.12, 0.1, 0.52, 7.67, 0.85, 
0.43, 1.04, 5.27, 6.59, 1.66, 0.42, 7.06, 1.6, 11.16, 6.42, 27.96, 
23.77, 0.75, 2.79, 16.92, 10.94, 16.51, 1.5, 9.37, 1.36, 1.05, 
3.41, 11.22, 0.99, 2.67, 1.92, 0.46, 0.96, 0.44, 11.47, 7.3, 
0.28, 7.24, 19.89, 1.07, 0.84, 10.69, 39.84, 0.33, 1.14, 0.55, 
2.53, 2.5, 1.55, 4.51, 1.12, 3.7, 20.8, 28.35, 9.88, 10.08, 2.54, 
16.33, 16.51, 13.52, 15, 1.84, 6.32, 0.64, 21.19, 0.32, 0.53, 
25.2, 1.1, 24.44, 1, 0.24, 3.91, 1.23, 6.42, 9.65, 7.29, 1.33, 
2.35, 0.93, 11.56, 1.19, 8.77, 5.3, 2.77, 3.32, 2.39, 12, 0.55, 
12.08, 81.75, 0.83, 4.22, 2.82, 15.05, 1.47, 1.43, 1.48, 0.25, 
11.32, 14.86, 6.4, 0.41, 3.15, 26.7, 0.59, 4.62, 0.67, 37.92, 
3.81, 13.76, 2.37, 2.24, 41.85, 9.16, 1.5, 6.27, 6.92, 11.03, 
0.88, 0.94, 4.71, 6.05, 5.24, 0.1, 0.39, 22.97, 0.83, 0.3, 0.47, 
14.41, 1.01, 25.45, 1.7, 1.33, 5.04, 1.68, 1.02, 11.47, 4.75, 
1.07, 1.34, 4.63, 13.31, 18.48, 7.56, 1.75), Samples = c("S19S_0006", 
"S19S_0007", "S19S_0008", "S19S_0009", "S19S_0010", "S19S_0100", 
"S19S_0011", "S19S_0012", "S19S_0014", "S19S_0015", "S19S_0016", 
"S19S_0017", "S19S_0018", "S19S_0019", "S19S_0020", "S19S_0021", 
"S19S_0022", "S19S_0023", "S19S_0025", "S19S_0026", "S19S_0027", 
"S19S_0028", "S19S_0029", "S19S_0030", "S19S_0031", "S19S_0032", 
"S19S_0033", "S19S_0034", "S19S_0035", "S19S_0036", "S19S_0037", 
"S19S_0038", "S19S_0039", "S19S_0041", "S19S_0042", "S19S_0050", 
"S19S_0051", "S19S_0052", "S19S_0053", "S19S_0055", "S19S_0059", 
"S19S_0060", "S19S_0062", "S19S_0063", "S19S_0064", "S19S_0068", 
"S19S_0069", "S19S_0070", "S19S_0071", "S19S_0072", "S19S_0074", 
"S19S_0075", "S19S_0076", "S19S_0077", "S19S_0080", "S19S_0081", 
"S19S_0082", "S19S_0083", "S19S_0084", "S19S_0085", "S19S_0086", 
"S19S_0087", "S19S_0089", "S19S_0090", "S19S_0098", "S19S_0099", 
"S19S_0006", "S19S_0008", "S19S_0009", "S19S_0010", "S19S_0100", 
"S19S_0012", "S19S_0015", "S19S_0017", "S19S_0018", "S19S_0019", 
"S19S_0021", "S19S_0022", "S19S_0023", "S19S_0025", "S19S_0026", 
"S19S_0027", "S19S_0028", "S19S_0029", "S19S_0031", "S19S_0032", 
"S19S_0033", "S19S_0034", "S19S_0035", "S19S_0036", "S19S_0037", 
"S19S_0038", "S19S_0039", "S19S_0040", "S19S_0041", "S19S_0042", 
"S19S_0043", "S19S_0050", "S19S_0051", "S19S_0052", "S19S_0053", 
"S19S_0059", "S19S_0060", "S19S_0062", "S19S_0063", "S19S_0064", 
"S19S_0069", "S19S_0070", "S19S_0071", "S19S_0072", "S19S_0073", 
"S19S_0074", "S19S_0075", "S19S_0076", "S19S_0077", "S19S_0080", 
"S19S_0082", "S19S_0083", "S19S_0084", "S19S_0085", "S19S_0086", 
"S19S_0087", "S19S_0090", "S19S_0097", "S19S_0098", "S19S_0099", 
"S19S_0007", "S19S_0008", "S19S_0009", "S19S_0010", "S19S_0100", 
"S19S_0011", "S19S_0012", "S19S_0015", "S19S_0016", "S19S_0017", 
"S19S_0018", "S19S_0019", "S19S_0020", "S19S_0022", "S19S_0023", 
"S19S_0025", "S19S_0026", "S19S_0027", "S19S_0028", "S19S_0029", 
"S19S_0031", "S19S_0032", "S19S_0033", "S19S_0034", "S19S_0035", 
"S19S_0036", "S19S_0037", "S19S_0038", "S19S_0039", "S19S_0040", 
"S19S_0041", "S19S_0042", "S19S_0043", "S19S_0047", "S19S_0050", 
"S19S_0051", "S19S_0052", "S19S_0053", "S19S_0060", "S19S_0062", 
"S19S_0063", "S19S_0064", "S19S_0066", "S19S_0069", "S19S_0070", 
"S19S_0071", "S19S_0072", "S19S_0073", "S19S_0074", "S19S_0075", 
"S19S_0076", "S19S_0077", "S19S_0080", "S19S_0082", "S19S_0083", 
"S19S_0084", "S19S_0085", "S19S_0086", "S19S_0090", "S19S_0097", 
"S19S_0098", "S19S_0099")), class = "data.frame", row.names = c(NA, 
-188L))

    > dput(head_npoc_sed)
structure(list(Sample_ID = c("S19S_0067_Sed_Field_ICR-D", "S19S_0072_Sed_Field_ICR-M", 
"S19S_0073_Sed_Field_ICR-U", "S19S_0071_Sed_Field_ICR-U", "S19S_0064_Sed_Field_ICR-M", 
"S19S_0067_Sed_Field_ICR-U"), X00681_NPOC_mg_per_L_as_C = c("24.32", 
"8.9", "20.24", "31.58", "21.81", "29.74"), Samples = c("S19S_0067", 
"S19S_0072", "S19S_0073", "S19S_0071", "S19S_0064", "S19S_0067"
), SampleID = c("Sample_S19S_0067_Sed_Field_ICR.D_P2", "Sample_S19S_0072_Sed_Field_ICR.M_P2", 
"Sample_S19S_0073_Sed_Field_ICR.U_P2", "Sample_S19S_0071_Sed_Field_ICR.U_P2", 
"Sample_S19S_0064_Sed_Field_ICR.M_P2", "Sample_S19S_0067_Sed_Field_ICR.U_P2"
)), row.names = c(NA, 6L), class = "data.frame")
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-05-09 18:56:35

问题是,您的factors_sedresp数据中有一些重复的数据。一种方法是在Samples的每一组中添加一个行号,以便只将resp中的第一个数据加入到factors_sed的第一个条目中。您可以使用以下代码:

代码语言:javascript
复制
library(dplyr)
left_join(factors_sed %>% group_by(Samples) %>% mutate(id = row_number()),
          resp %>% group_by(Samples) %>% mutate(id = row_number()), 
          by = c("Samples", "id")) %>%
  left_join(., head_npoc_sed, by = "Samples") %>%
  select(-id)
票数 2
EN

Stack Overflow用户

发布于 2022-05-09 18:44:24

复制件

当您将resp加入到factors_sed中时,您会获得更多的行,原因是在resp$Samples中有多个具有相同值的行。下面是一些示例:

代码语言:javascript
复制
resp %>% 
  group_by(Samples) %>%
  filter(n() > 1) %>%
  arrange(Samples)

因此,您必须为Samples列中的每个唯一值创建一个不超过一行的数据框架。这里有一种方法,但是您需要评估mean是否是正确的聚合函数(例如,也许sum更好?)

代码语言:javascript
复制
resp_duprm <- resp %>%
  group_by(Samples) %>%
  summarize(rate_mg_per_L_per_h = mean(rate_mg_per_L_per_h), .groups = 'drop')

npoc_sed中的重复

npoc_sed中可以看到相同的问题,在npoc_sed$Samples中有多个行表示相同的值。您只提供了前五行,所以我想除了这里的例子外,还有很多其他的例子:

代码语言:javascript
复制
npoc_sed %>% 
  group_by(Samples) %>%
  filter(n() > 1) %>%
  arrange(Samples)

您可以使用与上面类似的方法,您只需要聚合数据,以便在Samples列中每个唯一值只有一行。我不得不删除Sample_IDSampleID列。在Sample中,保留它们不会给我们每个唯一的值一行。此外,我再次选择了mean,但另一个函数可能更合适:

代码语言:javascript
复制
npoc_sed_duprm <- npoc_sed %>%
  mutate(X00681_NPOC_mg_per_L_as_C = as.numeric(X00681_NPOC_mg_per_L_as_C)) %>% # had to convert to numeric, it came as character in the dput()
  group_by(Samples) %>%
  summarize(X00681_NPOC_mg_per_L_as_C = mean(X00681_NPOC_mg_per_L_as_C), .groups = 'drop')

把一切都连接起来

一旦您拥有了resp_duprmnpoc_sed_duprm,就只需要使用left_join了。

代码语言:javascript
复制
factors_sed %>%
  left_join(resp_duprm, by = 'Samples') %>% 
  left_join(npoc_sed_duprm, by = 'Samples') 
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72147288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档