Фрейм данных Pandas) один столбец заменяет другой df

#python #pandas #dataframe #replace #concatenation

#python #pandas #фрейм данных #заменить #конкатенация

Вопрос:

У меня есть два фрейма данных pandas

 # python 3
one is | A | B | C | and another is | D | E | F |
       |---|---|---|                |---|---|---|
       | 1 | 2 | 3 |                | 3 | 4 | 6 |
       | 4 | 5 | 6 |                | 8 | 7 | 9 |
       | ......... |                | ......... |
 

Я хочу получить «ожидаемый» результат

 expected result : 

       | A | D | E | F | C |               
       |---|---|---|---|---|               
       | 1 | 3 | 4 | 6 | 3 |               
       | 4 | 8 | 7 | 9 | 6 |               
       | ................. |
        
df1['B'] convert into df2

       
 

Я пробовал

 pd.concat([df1,df2], axis=1, sort=False)

and drop column df['B']
 

но, похоже, это не очень эффективно.
Можно ли это решить с помощью insert () или другого метода?

Комментарии:

1. как вы думаете, почему это неэффективно?

Ответ №1:

Я думаю, что ваш метод хорош, также вы можете удалить столбец перед concat :

 pd.concat([df1.drop('B', axis=1),df2], axis=1, sort=False)
 

Другой метод с DataFrame.join :

 df1.drop('B', axis=1).join(df2)
 

Комментарии:

1. Я собираюсь попробовать это как первый метод из ваших хороших предложений! Большое вам спасибо, и я надеюсь, что вы хорошо закончите год