2016-06-27 4 views
0

私は2つを持っていますpandasDataFramesです。彼らは同じ列を持っているので、私はそれぞれからデータを取り出し、より大きなDataFrameに入れたいと思います。問題は、各行を識別する番号がそのままコピーされているのに対し、私はそれをインテリジェントに更新したいということです。ここで行IDを複製せずに2つのパンダのDataFramesを連結しますか?

は、私が持っているものです。

出力
import pandas as pd 

df_one = pd.DataFrame([ 
    {'animal': 'cat', 'color': 'black'}, 
    {'animal': 'dog', 'color': 'brown'}]) 
df_two = pd.DataFrame([ 
    {'animal': 'fish', 'color': 'red'}, 
    {'animal': 'bird', 'color': 'blue'}]) 

print(pd.DataFrame([df_one, df_two])) 

animal color 
0 cat  black 
1 dog  brown 
0 fish red 
1 bird blue 

を私が欲しいの出力は次のようになります。ignore_index=True

animal color 
0 cat  black 
1 dog  brown 
2 fish red 
3 bird blue 

答えて

3

使用concat

>>> pandas.concat([df_one, df_two], ignore_index=True) 
    animal color 
0 cat black 
1 dog brown 
2 fish red 
3 bird blue 
1

私は@ BrenBarnの答えが好きです。交互に行うこともできます:

>>> df_concat = pd.concat([df_one, df_two]).reset_index(drop=True) 
>>> df_concat 
    animal color 
0 cat black 
1 dog brown 
2 fish red 
3 bird blue 
関連する問題