ここでの目標は、列ヘッダーの上にあるPythonを通じて動的にデータフレーム内の特定の列にSUM値を追加することです。 SUM値を作成することはできますが、Excelにエクスポートした後はヘッダーの上に置くことはできません。どのようにPythonでこれを行うための任意のアイデア?私はxlrd、openpyxlなどを試しましたが、私はVBAマクロを呼び出すことに悩まされていません。誰もそれをやりたくはありません。私は47列あり、それらのいくつかを集計しているだけです。また、Openpyxlを使ってデフォルトのPandas Indexカラムを削除するなど、あとでデータをフォーマットするためにもっと多くのことをやっています。上記のシリーズを追加データフレームの列ヘッダーPythonでパンダを使用する
df = pd.read_sql(sqlStatement,cnxn_SQL)
row_sum = df[['GROSS ACRES', 'Value']].sum()
df_sum = pd.DataFrame(data=row_sum).T
df_concat_sum = df_sum
row = pd.Series(row_sum)
df_sum = df_sum.reindex(columns=df.columns)
df_sum = pd.DataFrame(columns = df_sum.columns)
newdf=df_sum.append(df,ignore_index=True).append([row], ignore_index=True)
writer = pd.ExcelWriter(standlisterxlsx, engine ='xlsxwriter')
newdf.to_excel(writer,'Sheet1')
workbook = writer.book
worksheet = writer.sheets['Sheet1']
writer.save()
writer.close()
私はこのようにしてエクスポートされたスプレッドシートを必要とする:
20 100
Column1 Column2 Column3 ACRES Column5 Value
ID1 x e 13 n 40
ID2 d e 7 n 20
ID3 d e 0 n 40
私は、Windows 8、32ビットでPython 2.7とパンダバージョン0.13.1を使用しています。
openpyxlの 'dataframe_to_rows'ユーティリティを使用してみてください。 –