Как изменить порядок столбцов и объединить их вместе в одном кадре данных pandas? - PullRequest
1 голос
/ 24 апреля 2019

Я получил два кадра данных панд ниже. Как я могу изменить порядок столбцов и объединить их? Спасибо!

+-----+---------------+-----------------+
| Id  |     Name      |      Title      |
+-----+---------------+-----------------+
| 121 | Value 2       | This is a title |
| 323 | Is a row with | Only one cell   |
+-----+---------------+-----------------+


+-----+---------------+--------+
| Id  |     Title     |  Name  |
+-----+---------------+--------+
| 443 | Title again   | Henk   |
| 454 | Just a Titile | Hertog |
+-----+---------------+--------+

Я хочу столбец, как показано ниже;)

+-----+-----------------+----------------+
| Id  |      Title      |      Name      |
+-----+-----------------+----------------+
| 121 | This is a title | Value 2        |
| 323 | Only one cell   | Is a row with  |
| 443 | Title again     | Henk           |
| 454 | Just a Titile   | Hertog         |
+-----+-----------------+----------------+

Ответы [ 2 ]

3 голосов
/ 24 апреля 2019

Используйте функцию concat, она также корректирует имена столбцов и меняет порядок столбцов на list:

cols = ['Id', 'Title', 'Name']
df = pd.concat([df1, df2], ignore_index=True, sort=False)[cols]
print (df)
    Id            Title           Name
0  121  This is a title        Value 2
1  323    Only one cell  Is a row with
2  443       Title gain           Henk
3  454    Just a Titile         Hertog

Или сначала измените порядок, а затем используйте concat:

df = pd.concat([df1[cols], df2[cols]], ignore_index=True, sort=False)
1 голос
/ 24 апреля 2019

Вы также можете попробовать:

df = df[['Id', 'Title', 'Name']]

Простое и простое индексирование / выбор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...