добавить два фрейма данных с неравными столбцами - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь добавить два кадра данных в панды, которые имеют два разных столбца.

Example:
df1
A  B
1  1
2  2
3  3

df2
A  
4
5

Expected concatenated dataframe 

df
A  B
1  1
2  2
3  3
4  Null(or)0
5  Null(or)0

я использую df1.append(df2) когда столбцы одинаковые. Но не знаю, как бороться с неравным количеством столбцов.

Ответы [ 2 ]

0 голосов
/ 02 июля 2018

Используйте concat, чтобы объединить два столбца и передать дополнительный аргумент ignore_index=True, чтобы сбросить индекс, иначе вы можете закончить с indexes как 0 1 2 0 1. Для получения дополнительной информации см. документы здесь :

df1 = pd.DataFrame({'A':[1,2,3], 'B':[1,2,3]})
df2 = pd.DataFrame({'A':[4,5]})
df  = pd.concat([df1,df2],ignore_index=True)
df

Выход:

без ignore_index = True:

    A   B
0   1   1.0
1   2   2.0
2   3   3.0
0   4   NaN
1   5   NaN

с ignore_index = True:

    A   B
0   1   1.0
1   2   2.0
2   3   3.0
3   4   NaN
4   5   NaN

0 голосов
/ 02 июля 2018

Как насчет pd.concat?

>>> pd.concat([df1,df2])
   A    B
0  1  1.0
1  2  2.0
2  3  3.0
0  4  NaN
1  5  NaN

Также df1.append(df2) все еще работает:

>>> df1.append(df2)
   A    B
0  1  1.0
1  2  2.0
2  3  3.0
0  4  NaN
1  5  NaN

Из docs из df.append:

Столбцы, не входящие в этот кадр, добавляются как новые столбцы.

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