объединить два кадра данных с одинаковым именем столбца последовательно? - PullRequest
0 голосов
/ 26 сентября 2018

Вход:

df = pd.DataFrame({"A":["foo", "foo", "foo", "bar"],"B":[0,1,1,1]})


   df1 = pd.DataFrame({"A":["Panda", "Panda", "Zootopia", "Zootopia"],"B":[0,1,1,1]})

Выход:

     A          B
0   foo         0
1   foo         1
2   foo         1
3   bar         1
4   Panda       0
5   Panda       1
6   Zootopia    1
7   Zootopia    1

Соедините df и df1, как указано в ожидаемом выводе.

Ответы [ 3 ]

0 голосов
/ 26 сентября 2018

Используйте concat с параметром ignore_index=True, чтобы избежать дублирования значений индекса:

df = pd.concat([df,df1], ignore_index=True) 
print (df)

          A  B
0       foo  0
1       foo  1
2       foo  1
3       bar  1
4     Panda  0
5     Panda  1
6  Zootopia  1
7  Zootopia  1
0 голосов
/ 26 сентября 2018

Или reset_index для concat:

print(pd.concat([df,df1]).reset_index(drop=True))
0 голосов
/ 26 сентября 2018

А как же DataFrame.append?

In [140]: df = pd.DataFrame({"A":["foo", "foo", "foo", "bar"],"B":[0,1,1,1]})
     ...:
     ...:
     ...: df1 = pd.DataFrame({"A":["Panda", "Panda", "Zootopia", "Zootopia"],"B":[0,1,1,1]})

In [141]: df.append(df1)
Out[141]:
          A  B
0       foo  0
1       foo  1
2       foo  1
3       bar  1
0     Panda  0
1     Panda  1
2  Zootopia  1
3  Zootopia  1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...