[解決済み] PySparkのデータフレームで各列のNullとNanの値の数を効率的に見つけるにはどうしたらいいですか?
2023-07-13 22:22:08
質問
import numpy as np
data = [
(1, 1, None),
(1, 2, float(5)),
(1, 3, np.nan),
(1, 4, None),
(1, 5, float(10)),
(1, 6, float("nan")),
(1, 6, float("nan")),
]
df = spark.createDataFrame(data, ("session", "timestamp1", "id2"))
期待される出力
各列のnan/nullのカウントを持つデータフレーム
注意 私がスタックオーバーフローで見つけた以前の質問は、null &ではなくnanをチェックするだけです。 それが私が新しい質問を作成した理由です。
私は私が使用することができることを知っている
isnull()
関数を使用してSparkカラムのNull値の数を見つけることができますが、SparkデータフレームのNan値を見つけるにはどうすればよいですか?
どのように解決するのですか?
以下の方法で解決できます。
ここで
に置き換えて
isNull
を
isnan
:
from pyspark.sql.functions import isnan, when, count, col
df.select([count(when(isnan(c), c)).alias(c) for c in df.columns]).show()
+-------+----------+---+
|session|timestamp1|id2|
+-------+----------+---+
| 0| 0| 3|
+-------+----------+---+
または
df.select([count(when(isnan(c) | col(c).isNull(), c)).alias(c) for c in df.columns]).show()
+-------+----------+---+
|session|timestamp1|id2|
+-------+----------+---+
| 0| 0| 5|
+-------+----------+---+
関連
-
[解決済み] format("kafka") で "Failed to find data source: kafka." とエラーになるのはなぜですか?(uber-jarを使用しても)失敗しますか?
-
[解決済み] spark 2.4.4 をインストールした後に pyspark を実行しようとすると、「TypeError: an integer is required (got type bytes)」というエラーが発生するのを修正する方法
-
[解決済み] pyspark のデータフレームで個別の列の値を表示する
-
[解決済み] スパークジョブとは?
-
[解決済み】pysparkでデータフレームの列名を変更する方法は?
-
[解決済み] Spark DataFrameに新しいカラムを追加するにはどうすればよいですか(PySparkを使用)?
-
[解決済み] Pysparkのデータフレーム列をNone値でフィルタリングする
-
[解決済み] sparkで出力ディレクトリを上書きする方法
-
[解決済み] Apache SparkのWeb UIにおける「Stage Skipped」の意味とは?
-
[解決済み] reduceByKeyとgroupByKeyとaggregateByKeyとcombineByKeyの違いのスパーク
最新
-
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.driver.maxResultSizeとは何ですか?
-
[解決済み] spark.sql.autoBroadcastJoinThresholdは、Datasetの結合演算子を使用して結合するために動作しますか?
-
[解決済み] SparkでcreateOrReplaceTempViewはどのように動作するのですか?
-
[解決済み] Apache SparkとAkkaの比較【終了しました
-
[解決済み] TypeError: 'Column' オブジェクトは WithColumn を使用して呼び出すことができません。
-
[解決済み] プロパティspark.yarn.jars - どのようにそれに対処するのですか?
-
[解決済み] Spark - repartition() vs coalesce()
-
[解決済み] sparkで出力ディレクトリを上書きする方法
-
[解決済み] Sparkジョブがorg.apache.spark.shuffle.MetadataFetchFailedExceptionで失敗する理由は何ですか?Shuffle 0 の投機モードでの出力場所がない?
-
[解決済み] PySparkで現在のsparkコンテキストの設定を取得することは可能ですか?