1. 学ぶ
  2. /
  3. コース
  4. /
  5. PySpark入門

Connected

演習

集約処理

.min()、.max()、.count() のような一般的な集約メソッドは、いずれも GroupedData のメソッドです。これは DataFrame の .groupBy() メソッドを呼び出すことで作成されます。これが具体的に何を意味するかは、このあと数個の演習で学びます。今は、これらの関数を使うには DataFrame に対してそのメソッドを呼ぶだけで十分です。たとえば、DataFrame df の列 col の最小値を求めるには、次のようにします。

df.groupBy().min("col").show()

これはまず GroupedData オブジェクトを作成(そのため .min() メソッドが使えます)し、次に col の最小値を求め、その結果を DataFrame として返します。

それでは、実際に集約処理をやってみましょう!

ワークスペースにはすでに spark という SparkSession と、Spark DataFrame の flights が用意されています。

指示

100 XP
  • PDX を出発したフライトのうち、最短距離(distance)のフライトの距離を、まず .filter() で絞り込み、続いて .min() メソッドで求めてください。フィルタ条件は SQL 文字列ではなく、列を直接参照して指定します。
  • SEA を出発したフライトのうち、最長時間(time)のフライトの所要時間を、filter() で絞り込み、続いて .max() メソッドで求めてください。フィルタ条件は SQL 文字列ではなく、列を直接参照して指定します。