[解決済み] スパークSPLラウンド&ブラウンド
2022-02-07 23:56:31
質問
スパークSPLでラウンドとブラウンドがどのように動作しているのか混乱しています。
scala> spark.sql("select round(1.5, 0), bround(1.5, 0)").show()
+-------------+--------------+
|round(1.5, 0)|bround(1.5, 0)|
+-------------+--------------+
| 2| 2|
+-------------+--------------+
scala> spark.sql("select round(2.5, 0), bround(2.5, 0)").show()
+-------------+--------------+
|round(2.5, 0)|bround(2.5, 0)|
+-------------+--------------+
| 3| 2|
+-------------+--------------+
scala> spark.sql("select round(3.5, 0), bround(3.5, 0)").show()
+-------------+--------------+
|round(3.5, 0)|bround(3.5, 0)|
+-------------+--------------+
| 4| 4|
+-------------+--------------+
解決方法は?
- 丸い
文字どおりの「最近接値」に丸めるモードです。 ただし、両隣が等距離の場合は切り上げとなります。 のように動作します。
RoundingMode.UP
の場合、捨象された それ以外の場合は、以下のように動作します。 {コードRoundingMode.DOWN
}. なお、これは丸め というモードは、学校でよく習います。
例:
input=5.5 output=6
input=2.5 output=3
input=1.6 output=2
input=1.1 output=1
input=1.0 output=1
input=-1.0 output=-1
input=-1.1 output=-1
input=-1.6 output=-2
input=-2.5 output=-3
input=-5.5 output=-6
- 丸い
文字どおりの「最近接値」に丸めるモード。 ただし、両隣が等距離の場合は、{@iteral "neighbor"}に丸める。 を偶数番目の隣人に向けて送信します。 以下のように動作します。 {コード
RoundingMode.HALF_UP
の左側の桁が、"1 "であれば、"2 "となります。 のように動作します。 {コードRoundingMode.HALF_DOWN
偶数なら なお、この は、統計的に累積を最小にする丸めモードです。 は、一連の計算で繰り返し適用すると、誤差が生じます。 これは、{@literal "Banker's rounding,"}と呼ばれることもあり、以下のように呼ばれています。 主に米国で使用されている。 この丸めモードは、以下のものと類似している。 コード float} と {@コード double} で使用される丸め方針です。 Javaにおける算術演算
例
input=5.5 output=6
input=2.5 output=2
input=1.6 output=2
input=1.1 output=1
input=1.0 output=1
input=-1.0 output=-1
input=-1.1 output=-1
input=-1.6 output=-2
input=-2.5 output=-2
input=-5.5 output=-6
関連
-
[解決済み] Scalaでsynchronizedを使うには?
-
[解決済み] Scala マップ foreach
-
[解決済み] self-typesとtrait subclassの違いは何ですか?
-
[解決済み] Traitの代わりに抽象クラスを使用する利点は何ですか?
-
[解決済み】Scalaにおける中括弧と括弧の正式な違い、また、どのような場合に使用すべきなのか?
-
[解決済み】Spark Dataframeで列の内容をすべて表示するにはどうすればよいですか?
-
[解決済み】ScalaのCaseオブジェクトとEnumerationsの比較
-
[解決済み】Scalaの名前による呼び出しと値による呼び出し、明確化の必要性
-
[解決済み】Scala 2.8における<:<、<%<、=:=の意味と、それらのドキュメントはどこにあるのか?
-
[解決済み] Build.scala、%および%%の記号の意味
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Sparkです。CoarseGrainedSchedulerが見つかりませんでした。
-
[解決済み] Scala: スライド(N,N) vs グループ化(N)
-
[解決済み] TimeoutExceptionが発生した場合、どのような原因が考えられるでしょうか。Sparkで作業しているときに[n秒]後にFuturesがタイムアウトしました[重複]。
-
[解決済み] Spark - CSVファイルをDataFrameとして読み込む?
-
[解決済み] スカラズのイテレート。「より大きな」モナドのために `EnumeratorT` を `IterateeT` にマッチングさせる「リフティング」。
-
[解決済み】Scalaのvarとvalの定義の違いは何ですか?
-
[解決済み】タイプセーフのenum型をモデル化する方法は?
-
[解決済み] 縮小、折りたたみ、スキャン(左/右)?
-
[解決済み] Scalaの識別子 "implicitly "とは?
-
[解決済み] Build.scala、%および%%の記号の意味