プログラミング初心者です。
内容に間違いがあるかもしれないのでご注意ください。
DataFrameの先頭に行を追加するメソッドは無さそうだったので、
追加したい行のみのDataFrameを作成してpandas.concat()
メソッドで合成する方法をとってみる。
追加される側のDataFrameの作成
import numpy as np
import pandas as pd
# 3行2列のランダム数値が入った配列から作成
df = pd.DataFrame(np.random.rand(3,2), index=['A', 'B', 'C'], columns=['foo', 'bar'])
# foo bar
# A 0.299105 0.841390
# B 0.424596 0.316961
# C 0.055032 0.110246
追加したい行をDataFrameとして作成
# 追加される側と同じ列数の1行配列を作成(ここでは1行2列)
a = np.zeros(len(df.columns)).reshape(1,len(df.columns))
# array([[0., 0.]])
# DataFrameに変換する
df_insert = pd.DataFrame(a, index=['X'], columns=df.columns)
# foo bar
# X 0.0 0.0
pandas.concat()
で合成
pd.concat([df_insert, df])
# foo bar
# X 0.000000 0.000000
# A 0.299105 0.841390
# B 0.424596 0.316961
# C 0.055032 0.110246
もっと良い方法がありそうな気もするけれど、ひとまずこれで対応。