Julia 如何使用不匹配的列名执行垂直连接?

Julia 如何使用不匹配的列名执行垂直连接?,julia,julia-dataframe,Julia,Julia Dataframe,我有两个df,如下所示 df1 df2 当我执行它抛出的vcat时,ArgumentError:参数1中缺少列x4 我理解这个错误是因为列名不匹配。有没有办法我仍然可以附加这些数据帧,并把丢失的放在找不到的地方 预期产出: 6×3 DataFrame │ Row │ x1 │ x2 │ x3 │ x4 | │ │ Int64 │ Int64 │ Int64 │ | ├─────┼───────┼───────┼───────┤───────┤ │ 1

我有两个df,如下所示

df1

df2

当我执行它抛出的vcat时,ArgumentError:参数1中缺少列x4 我理解这个错误是因为列名不匹配。有没有办法我仍然可以附加这些数据帧,并把
丢失的
放在找不到的地方

预期产出:

6×3 DataFrame
│ Row │ x1    │ x2    │ x3    │ x4    |
│     │ Int64 │ Int64 │ Int64 │       |
├─────┼───────┼───────┼───────┤───────┤
│ 1   │ 8     │ 1     │ 4     │missing|
│ 2   │ 4     │ 3     │ 1     │missing|
│ 3   │ 7     │ 8     │ 1     │missing|
│ 4   │ 20    │ 14    │ 18    │100    |
│ 5   │ 13    │ 19    │ 17    │101    |
│ 6   │ 13    │ 10    │ 16    │102    |
仅键入:

vcat(df1, df2, cols=:union)
您可以通过查看
vcat
的帮助来找到此信息:

julia> ?vcat
  
  ...

  Example
  ≡≡≡≡≡≡≡≡≡

  julia> df1 = DataFrame(A=1:3, B=1:3);

  ...

  julia> df3 = DataFrame(A=7:9, C=7:9);

  ...

  julia> vcat(df1, df3, cols=:union)
  6×3 DataFrame
  │ Row │ A     │ B       │ C       │
  │     │ Int64 │ Int64?  │ Int64?  │
  ├─────┼───────┼─────────┼─────────┤
  │ 1   │ 1     │ 1       │ missing │
  │ 2   │ 2     │ 2       │ missing │
  │ 3   │ 3     │ 3       │ missing │
  │ 4   │ 7     │ missing │ 7       │
  │ 5   │ 8     │ missing │ 8       │
  │ 6   │ 9     │ missing │ 9       │
仅键入:

vcat(df1, df2, cols=:union)
您可以通过查看
vcat
的帮助来找到此信息:

julia> ?vcat
  
  ...

  Example
  ≡≡≡≡≡≡≡≡≡

  julia> df1 = DataFrame(A=1:3, B=1:3);

  ...

  julia> df3 = DataFrame(A=7:9, C=7:9);

  ...

  julia> vcat(df1, df3, cols=:union)
  6×3 DataFrame
  │ Row │ A     │ B       │ C       │
  │     │ Int64 │ Int64?  │ Int64?  │
  ├─────┼───────┼─────────┼─────────┤
  │ 1   │ 1     │ 1       │ missing │
  │ 2   │ 2     │ 2       │ missing │
  │ 3   │ 3     │ 3       │ missing │
  │ 4   │ 7     │ missing │ 7       │
  │ 5   │ 8     │ missing │ 8       │
  │ 6   │ 9     │ missing │ 9       │