Ich möchte die Zeilen herausfiltern, an denen CID (String-Typ) '-' und Merkmal_diff null ist. Die Codes, die ich bereitgestellt habe, filtern die Zeilen heraus, bei denen beide null sind, auch wenn ich ISNull für CID nicht einsehe (wie in der 3. Codezeile). < /P>
df = df.filter(
~((col('CID') == "-") & (col('CID').isNull()) & col('trait_diff').isNull())
)
df = df.filter(
~((col('CID').isNull()) & col('trait_diff').isNull())
)
df = df.filter(
~((col('CID') == "-") & col('trait_diff').isNull())
)
< /code>
Oben 3 Code filtern Sie dieselben Zeilen, bei denen CID null ist, und MASTE_DIFF ist null, unabhängig davon, ob CID von Null nicht vorhanden ist. Ich habe überprüft, ob es in allen Fällen 3 Zeilen herausfiltert und dort sind beide Null. < /P>
In der ersten kann ich nicht verstehen gleichzeitig. Beim Entfernen des ~, um die 3 gefilterten Zeilen herauszuholen, gibt es nichts zurück. (Um zu überprüfen, welche Zeilen gefiltert werden, habe ich die Excel -Datei exportiert, Datenbleals haben nichts zurückgegeben.) >
df = df.filter(
(col('CID') != "-") | col('trait_diff').isNotNull()
)
< /code>
Kann mir jemand helfen, hier zu verstehen, warum es keine erwarteten Ergebnisse liefert. Idee, warum dies funktioniert (denn wenn CID '-' 'ist und es nicht null ist und wir diesen Zustand nicht einlegen müssen) und nicht andere < /p>
df = df.filter(
~((col('CID') == "-") & col('CID').isNotNull() & col('trait_diff').isNull())
)
[url=viewtopic.php?t=14917]Ich möchte[/url] die Zeilen herausfiltern, an denen CID (String-Typ) '-' und Merkmal_diff null ist. Die Codes, die ich bereitgestellt habe, filtern die Zeilen heraus, bei denen beide null sind, auch wenn ich ISNull für CID nicht einsehe (wie in der 3. Codezeile). < /P> [code]df = df.filter( ~((col('CID') == "-") & (col('CID').isNull()) & col('trait_diff').isNull()) )
df = df.filter( ~((col('CID') == "-") & col('trait_diff').isNull()) ) < /code> Oben 3 Code filtern Sie dieselben Zeilen, bei denen CID null ist, und MASTE_DIFF ist null, unabhängig davon, ob CID von Null nicht vorhanden ist. Ich habe überprüft, ob es in allen Fällen 3 Zeilen herausfiltert und dort sind beide Null. < /P> In der ersten kann ich nicht verstehen gleichzeitig. Beim Entfernen des ~, um die 3 gefilterten Zeilen herauszuholen, gibt es nichts zurück. (Um zu überprüfen, welche Zeilen gefiltert werden, habe ich die Excel -Datei exportiert, Datenbleals haben nichts zurückgegeben.) > df = df.filter( (col('CID') != "-") | col('trait_diff').isNotNull() ) < /code> Kann mir jemand helfen, hier zu verstehen, warum es keine erwarteten Ergebnisse liefert. Idee, warum dies funktioniert (denn wenn CID '-' 'ist und es nicht null ist und wir diesen Zustand nicht einlegen müssen) und nicht andere < /p> df = df.filter( ~((col('CID') == "-") & col('CID').isNotNull() & col('trait_diff').isNull()) ) [/code]
Ich möchte die Zeilen herausfiltern, an denen CID (String-Typ) '-' und Merkmal_diff null ist. Die Codes, die ich bereitgestellt habe, filtern die Zeilen heraus, bei denen beide null sind, auch wenn...
Ich lade einen Datensatz aus BigQuery und möchte nach einigen Transformationen den transformierten DataFrame wieder in BigQuery speichern. Gibt es eine Möglichkeit, dies zu tun?
Ich versuche, die pfeiloptimierte Python-UDF von Spark 4 wie unten zu testen,
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, lit, udf
from pyspark.sql.types import...
Heyyy, ich kann mit Pyspark problemlos aus BigQuery lesen, aber das Schreiben scheint unmöglich, da dieser Fehler ständig auftritt:
Caused by: java.lang.NoSuchMethodError:...