データの準備
必要なデータは以下のURLからダウンロードします。(t22205.zip)
本の中ではAnacondaを使用していますが、VSCでやってみます。
anacondaは
https://www.anaconda.com/ からdownloadボタンで入手できます。
ケース1:分割編 Excelファイルの内容を取引さきごとに抽出し、取引先のフォルダーに分割して保存
手順としては以下の通りです。
0.t22205.zipを任意のフォルダに解凍
1.\t22205\lesson\Case01\inputフォルダに発注管理表があるので、取引先ごとに抽出
2.抽出したデータを取引先ごとにExcelファイルに書き出す
3.Excelファイル名を「発注日+株式会社○○様」にし、outputフォルダに保存
1.\t22205\lesson\Case01\inputフォルダに発注管理表があるので、取引先ごとに抽出
必要なライブラリとモジュールのimport。
ライブラリはプログラムでよく使用する機能をまとめて簡単に使用できるようにしたものです。標準ライブラリはimportする必要のないライブラリを指し、外部ライブラリはpandas、tensorflowなどを指します。
モジュールは○○.pyのファイルで○○がモジュール名です。
pandasはExcelファイルの操作に使用するライブラリです。asを使用して短い単語に置き換えています。
osはファイルの変更、パスの生成などに使用します。(モジュール)
datetimeは日付や時刻を扱うモジュールです。
パスを設定します。
import_file_path、sheets_name、export_file_pathという変数を用意し、それぞれにエクセルファイル場所、シート名、出力するフォルダ名を指定します。
sample.xlsxファイルの読み込みはpd.read_excelを使用します。
head()でファイルの先頭5行を表示します。
実行結果
会社名 商品番号 商品分類 商品名 単価(円) 数量 発注金額
0 株式会社A b023 ボトムス ロングパンツ 7000 8 56000
1 株式会社A b003 ボトムス ジーンズ 6000 10 60000
2 株式会社A b003 ボトムス ロングパンツ 7000 10 70000
3 株式会社A b036 ボトムス ロングパンツ 7000 2 14000
4 株式会社A b013 トップス ニット 8000 7 56000
会社名を取得し、発注日を作成します。
uniqueメソッドで重複した会社名は除外します。
strftimeメソッドを使用してtimeの体裁を整えます。
todayとtoday_dateの違い
2022-04-11 07:46:19.598582
20220411
for分で会社数だけファイルを作成し、outputフォルダに格納します。
実行結果['株式会社A', '株式会社B', '株式会社C', '株式会社D', '株式会社E', '株式会社F', '株式会社G', '株式会社H', '株式会社I', '株式会社J', '
株式会社K', '株式会社L', '株式会社M', '株式会社N', '株式会社O', '株式会社P', '株式会社Q', '株式会社R', '株式会社S', '株式会社T', '株
式会社U', '株式会社V', '株式会社W', '株式会社X', '株式会社Y', '株式会社Z']
['20220411株式会社Z様.xlsx']