注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Code Workbook では、Spark R とネイティブ R の両方を使用できます。Spark R は、大規模なデータセットに対する選択、フィルター、集計などの操作をサポートする分散データフレームの実装を提供します。ネイティブ R のほうが使い慣れている場合でも、ネイティブ R を使用する前に、まず SparkR を使用して大規模なデータセットを絞り込むことを推奨します。
利用可能なすべての操作については、SparkR の API ドキュメント ↗全文を参照してください。以下では、一般的な操作の構文の概要を説明します。
フィルター式には、文字列として渡す SQL に似た WHERE 句を使用できます。
Copied!1df_filtered <- SparkR::filter(df, "numeric_col > 10")
標準の R 構文に似た列の式も使用できます。
Copied!1df_filtered <- SparkR::filter(df, df$numeric_col > 10)
同様の構文で SparkR::where も使用できます。
Copied!1df_filtered <- SparkR::where(df, "numeric_col > 10")
SparkR::select() を使用して、列のサブセットを選択します。
Copied!1df_subset <- SparkR::select(df, "column1", "column2", "column3")
SparkR::withColumnRenamed() を使用して、列の名前を変更します。
Copied!1df <- SparkR::withColumnRenamed(df, "old_column_name", "new_column_name")
SparkR::withColumn() を使用して、新しい列を追加します。
Copied!1 2 3 4# 2列を加算します df <- SparkR::withColumn(df, 'col1_plus_col2', df$col1 + df$col2) # 列に定数を掛けます df <- SparkR::withColumn(df, 'col1_times_60', df$col1 * 60)
SparkR::groupBy と SparkR::agg を使用して、集計値を計算します。SparkR::groupBy を呼び出すと、グループ化オブジェクトが作成されます。グループ化オブジェクトを SparkR::agg に渡すと、集計されたデータフレームが生成されます。
Copied!1 2df_grouped <- SparkR::groupBy(df, "group_col1", "group_col2") df_agg <- SparkR::agg(df_grouped, average_col1=avg(df$col1), max_col=max(df$col1))