December 2025
Intermediate to advanced
468 pages
7h 58m
Japanese
本章では、Polarsの内部構造を深く掘り下げ、Polarsを強力で効率的なデータ操作パッケージたらしめるメカニズムを明らかにする。これまでも本書全体を通して、Polarsの機能を全体的に理解する必要がある際に、本章を参照してきた。
本章では、次のことを学ぶ。
本章で必要なファイルを入手する手順は既に「2章 Polarsを使い始める」で説明している。また本章では、dataサブディレクトリにファイルがあると仮定する。
本章を読めば、Polarsを高速かつ効率的にしているさまざまな技術をより深く理解できるようになるだろう。また、これらの内部構造を自分のデータ処理タスクに活用する方法についての実践的な知識も得られるだろう。
すべてはコードから始まる。あなたが入力するコードは、Polarsのドメイン固有言語(DSL)である。このDSLによって、何をすべきかを宣言的に定義する。
DSLは、実行すべき作業を抽象的に表現した中間表現(Intermediate Representation:IR)に変換される。このIRを表示するには、lf.explain()を呼び出して文字列表現に変換すればいい。またlf.show_graph()を使って可視化することもできる。IRは、有向非巡回グラフ(DAG)として表現される。各ノードは計算を、エッジはデータフローを表す。IRは演算を定義するだけでなく、オプティマイザが必要とするデータ型やデータのシェイプに関する情報も保持する。これらの情報によって、演算がエラーとなるかどうかを事前に判断することができる。したがって、コードを実行する前にエラーメッセージを返すことができ、デバッグにかかる時間を短縮できる。 ...
Read now
Unlock full access