У меня есть два CSV-файла, которые мне нужно объединить на основе пересечения двух файлов, которые я хочу отбросить столбцы, которые не были повторены - PullRequest
0 голосов
/ 25 февраля 2020

Например, если файл 1 выглядит следующим образом:

 id  col1  col2  col3
 --------------------
  1  aa    bb     cc
  2  dd    ff     gg

, а файл 2 выглядит как

 id  col1  col2  col3  col4
 ---------------------------
  3   qq    ww    ee    tt

Я хочу, чтобы выходной файл выглядел как

 id   col1   col2   col3
 -----------------------
  1   aa     bb     cc
  2   dd     ff     gg
  3   qq     ww     ee 

Это означает, что я хочу объединить файлы, основываясь только на пересечении, и хочу отбросить столбцы, которые не повторялись в обоих файлах

Я попробовал следующие попытки

df1= pd.read_csv("lastOne.csv")
df2=pd.read_csv("Normal.csv")
dfAll=pd.concat([df1, df2], axis=1, join='inner')

I также пробовал df1.combine_first (df2) среди многих других, но все не может сделать то, что мне нужно

1 Ответ

0 голосов
/ 25 февраля 2020

Вы были близки, но выбрали неправильную ось.

ось = 0 , если хотите добавить больше строк с похожими столбцами

ось = 1 , если вы хотите добавить больше столбцов и у вас есть похожие строки

Правильный ответ будет:

pd.concat([df1, df2], join='inner', axis=0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...