🐻‍❄️

PandasからPolarsへ移行する時困ったこと(Excelでのヘッダー指定編)

2024/08/17に公開

Excelのファイルからデータを読みデータフレームを格納する際にPandasとPolarsではヘッダーの指定の仕方が異なり、詰まったので記録しておこうと思う。
[経緯]
polarsの公式ドキュメントの方法(has_header)でヘッダー指定すると、行が消え列名に指定したい行も消えてしまうため解決策を探した。英語記事で該当記事を見つけたが日本語記事が見当たらなかった(多分)ので対処法を書きました。

[結論]
◻︎Pandasだと

df = pd.read_excel("excel.xlsx", header=9)

だが、
◻︎Polarsだと

df = pl.read.excel("excel.xlsx",read_options={"header_row": 9})

のように書くと列名に指定したい行を指定できる。
polarsがexcelを読み込むときにはfastexcelというエンジンを使用しているらしい。
そのためfastexcelのヘッダーの指定の仕方で列名を指定できるとのこと。

Discussion