pandasでデータフレームを結合するときにconcatをよく使うのですが、インデックスがおかしなことになるので、新しくインデックスを振り直すところまで

dict_a = {
    'odd':  [11,13,15,17,19],
    'even': [10,12,14,16,18]
}

dict_b = {
    'odd':  [21,23,25,27,29],
    'even': [20,22,24,26,28]
}


df_a = pd.DataFrame(dict_a)
df_b = pd.DataFrame(dict_a)


print(df_a)
'''
   odd  even
0   11    10
1   13    12
2   15    14
3   17    16
4   19    18
'''

print(df_b)
'''
   odd  even
0   11    10
1   13    12
2   15    14
3   17    16
4   19    18
'''

# 結合

merged_df = pd.concat([df_a, df_b])

'''
   odd  even
0   11    10
1   13    12
2   15    14
3   17    16
4   19    18
0   11    10
1   13    12
2   15    14
3   17    16
4   19    18
'''

new_df = merged_df.reset_index(drop=True)

print(new_df)
'''
   odd  even
0   11    10
1   13    12
2   15    14
3   17    16
4   19    18
5   11    10
6   13    12
7   15    14
8   17    16
9   19    18
'''

こんな感じ!

reset_index(drop=True) はよく使うので覚えておこう。

p.s.

dictをpd.DataFrame()に渡して、dfに変換するの結構便利でよく使う。

データ整形の時はdictを使えば、pythonのいつも通りに慣れ親しんだ方法が使えて、出来上がったものをdfに変換すれば良いだけだからおすすめ