Why do you want a loop? Normally you can just write:
innerjoin(A, B, C, D, on = [:x1, :x2, :x3], makeunique=true)
makeunique=true is needed as I understand that you have the same column name :x4 in all data frames.
Why do you want a loop? Normally you can just write:
innerjoin(A, B, C, D, on = [:x1, :x2, :x3], makeunique=true)
makeunique=true is needed as I understand that you have the same column name :x4 in all data frames.