2017-06-04 63 views
0

同じワークシートに異なるサイズのデータ​​フレームを書き込むのに、書き込まれた最新のデータ値だけが表示されるようにする正しいプログラムフローは何ですか? pygsheetsを使用してGoogleシートにデータフレームを読み書きする

はここに私の元のシーケンスました:

gc = pygsheets.authorize(outh_file=oauth_file) 
sh = gc.open(sheet_name) 
wks = sh.worksheet_by_title(wks_name) 
wks.set_dataframe(df, (1, 1)) 

第一の書き込みが3800行が×12件のcolsと第二の書き込みが2400行週間は、まだ以前の書き込みからのデータを示すだろう×12のcolsのであった場合は、上記の手順を通報しています2400

私の第二溶液(基本的にハックはちょうどそれが私のために働くことを得るために)上記の行のために:

gc = pygsheets.authorize(outh_file=oauth_file) 
sh = gc.open(spreadsheet_name) 
wks = sh.worksheet_by_title(sheet_name) 
sh.del_worksheet(wks) 
sh.add_worksheet(sheet_name, rows=len(df) + 1, cols=len(df.columns)) 
wks = sh.worksheet_by_title(sheet_name) 
wks.set_dataframe(df, (1, 1)) 

上記のシーケンスは、基本的に私はB欲しいものありません私はwksを削除する必要はありません(私はすべての手動フォーマットを失う)。達成するための正しい方法が必要であることは知っていますが、Pygsheets APIはよく分かりません。

さらに高度なpygsheetユーザーは、適切なプログラムフローと使用方法を教えてください。

TIA、 --Rj

+0

私はちょっと調べて、set_dataframeメソッドのfit = Trueオプションを設定して見つけたものを探しました: – jainraje

答えて

0

fit=Trueは基本的にデータフレームを合わせてシートのサイズを変更します。シートを同じサイズにしておきたい場合は、次の書き込みの前にシートをクリアすることができます。それはあなたの2番目の解決策より簡単になります。また、以前に書いた範囲をクリアしたい場合は、範囲をクリアして関数をクリアすることもできます。

wks.set_dataframe(df, (1, 1)) 
wks.clear() 
wks.set_dataframe(df, (1, 1)) 
関連する問題