始める無料で始める

pandas のベクトル化を体験しよう

この演習では、pandas の Series に対してベクトル化を使い、次を行います。

  • 各手札(行)に含まれるカードのランクの平均を計算する
  • 各手札に含まれる5枚のカード(列)それぞれのランクの平均を計算する

どちらの方法が効率的かを比較するために、再び poker_hands データセットを使います。

この演習はコースの一部です

pandasで効率的にコードを書く

コースを見る

演習の手順

  • 各手札ごとの平均ランクを計算してください。
  • すべての手札について、5枚の各カードごとの平均ランクを計算してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Calculate the mean rank in each hand
row_start_time = time.time()
mean_r = poker_hands[['R1', 'R2', 'R3', 'R4', 'R5']].____(axis=____)
print("Time using pandas vectorization for rows: {} sec".format(time.time() - row_start_time))
print(mean_r.head())

# Calculate the mean rank of each of the 5 card in all hands
col_start_time = time.time()
mean_c = poker_hands[['R1', 'R2', 'R3', ____, ____]].____(____=____)
print("Time using pandas vectorization for columns: {} sec".format(time.time() - col_start_time))
print(mean_c.head())
コードを編集して実行