列の選択:.iloc[] と 名前指定の比較
前の演習では、.loc[] と .iloc[] を使って(インデックスに基づいて)特定の行を取得できることを確認しました。このタスクでは、.iloc[] のほうが約2倍高速に動作することがわかりました。
次に重要なのは、DataFrame の対象の特徴量(列)を選択する際に、どちらが速いかを見極めることです。この演習では次を比較します。
- インデックスロケータ
.iloc()を使う方法 - 列名を使う方法 どちらの方法でも同じ処理は可能ですが、ここでは速度面でどちらが効率的かに注目します。
この演習でも、poker_hands に保存されたポーカーのデータを使います。コンソールで poker_hands.head() を呼び出して、この DataFrame の構造をざっと確認しておきましょう!
この演習はコースの一部です
pandasで効率的にコードを書く
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Use .iloc to select the first, fourth, fifth, seventh and eighth column and record the times before and after
iloc_start_time = ___
cols = poker_hands.___[___,[0,3,___,___,___]]
iloc_end_time = ___
# Print the time it took
print("Time using .iloc[] : {} sec".format(___ - ___))