pandas.read_excel の usecols と dtype | 病棟薬剤師&DIやん

病棟薬剤師&DIやん

医療従事者の方々向けに書いています。非医療従事者の方々はここに書いてある情報を鵜呑みにせず、必ずかかりつけ医・薬剤師等にご相談ください。

 

 

↑この本を買って、薬剤部のデータ分析を試みています。

 

今回は、卸から頂いた入荷データをデータベース化する試みです。

 

卸からもらったエクセルのデータを読み込むには、

pandasモジュールのread_excelを用います↓

 

df = pd.read_excel('data.xlsx', usecols=[1,3,5,6,8,10,11,12], dtype={'発行日':'str','品名':'str','数量':'int','単価':'int','薬価金額':'float','ロット1':'str','期限1':'str','JANコード':'str'})
 

データを貰うときは、確認用に冗長なデータを貰いますが、

データベース化するときには正規化するので、

不要な列が発生します。

必要な列のみ指定するのが、usecolsです。

 

また、データ型は指定しておかないと、

JANコードがintと解釈されて、最後の方の数字がゼロになってしまいます。

このため、dtypeでインポートする列は全てデータ型を指定しておきます。

 

最後の方の数字がゼロになるのはExcelでも見られますね↓