NO IMAGE

これは便利!Pythonのconcat関数で追記するプログラムをつくる

ファイルに追記していくプログラム

既存のファイルにデータを連結したいこともあります。例えば、毎⽉や毎週など定期的にデータが送られてきて、それを連結したい場合などです。Excelで作業する場合は、現在のファイルを開き、そこに新しいデータをコピー&ペーストして上書き保存します。Pythonのプログラムでも考え⽅は同じで、現在のファイルを読み込み、そこにデータを連結して同じファイル名で保存(上書き保存)します。

2つのExcelファイルをプログラムと同じフォルダ内に置き、プログラムを実⾏すると「⼤阪⽀店.xslx」の内容が「統合表.xslx」に連結されます。

1つ注意が必要なのは、プログラムを実⾏するたびに「⼤阪⽀店.xlsx」が連結されるので、何回も実⾏すると重複したデータができてしまうという点です。実⾏回数に注意してください。

サンプルファイルは下のeditボタンからダウンロード

import pandas as pd

df= pd.read_excel("統合表.xlsx")

read_data=pd.read_excel("大阪支店.xlsx",engine="openpyxl")

df=pd.concat([df,read_data])

with pd.ExcelWriter("統合表.xlsx") as writer:

    df.to_excel(writer,index=False)

read_excel関数で対象のファイルを読み込み、to_excelメソッドで保存する点はこれまでと同じです。

concat関数とは

使⽤しているのはconcat関数です。DataFrameオブジェクトのリストを引数に指定すると、それらを連結したDataFrameオブジェクトを返します

近頃は資料の表がPDFで届くことも増えています。PDFは容易に書き換えされないといったリットもありますが、何かの資料に使う場合はExcelなどの形式に変換しなければいけません。今回はPythonを使ってPDFからExcelに変換する⽅法を紹介しましょう。

このパッケージを利⽤するには、Pythonのほかに

Javaというプログラミング⾔語の実⾏環境も必要です。

https://www.java.com/ja/download/

PDFから表を抜き出すためにtabulaパッケージを使っています。

このパッケージは標準ではインスト ー ルされないので、AnacondaNavigatorを使うか、以下のコマンドでインストールしてください。

convert_into関数

tabulaのconvert_into関数を使うと、PDFファイル内の表をCSVやTSV、JSON などの形式で書き出せます。 CSVで書き出したい場合は「output_format=”csv”」と指定します。また、PDFのページを指定したい場合は「pages=”1-2,3″」のように指定します。

convert_into関数を実⾏すると、カレントディレクトリ内にCSVファイルが作成されます。それをread_csv関数で読み込み、to_excelメソッドでExcelファイルを保存します。

DataFrameを操作する便利な関数

PythonでExcelを操る他テクニック

複数のファイルの文字をまとめて置き換えする

openpyxlの使い方 Excelの差し込みがワンクリックで

tabulaのconvert_into関数でPDFファイルをExcelに変換

【Python】項目がバラバラなExcelファイルを一つにまとめる

【Python】globモジュールの便利な使い方

iterrowsメソッドで複数のファイルを1つにまとめる

【Python】to_excelメソッドでCSVファイルをExcel形式に変換

Pythonの開発環境をAnacondaで整える~プログラム実行まで~

NO IMAGE
最新情報をチェックしよう!
>プログラミング 独学

プログラミング 独学

本当にプログラミングを学びたい人のためになるブログにしたいと思っていますので、些細なことでも気が付いたのであればご報告いただけると幸いです。

CTR IMG