PySpark 2.0で実行したい操作はdf.rdd.map
として実行しやすいが、Dataframe実行エンジンのパフォーマンス上の理由から、Dataframe操作のみを使用してこれを行う方法を見つけたいと思います。Spark Dataframeカラムのデータを条件として使用するか、別のカラム式に入力する
操作、RDD-スタイルで、このようなものされています。基本的に、私は私の文字列の書式設定操作の精度がどうあるべきか、行ごとに、私に語ったコラムを
def precision_formatter(row):
formatter = "%.{}f".format(row.precision)
return row + [formatter % row.amount_raw/10 ** row.precision]
df = df.rdd.map(precision_formatter)
を持っており、私は、その精度に応じて、 'amount_raw'列を選択的に文字列としてフォーマットしたいと思います。