"latest_travel_date"という名前の列のいくつかの特定の日付値を "NA"で置き換えるUDFを作成しました。ただし、この列には多くのNULL値も含まれているため、これもUDFで処理しました。NameError:グローバル名 'NoneType'がSparkで定義されていません
Query:
def date_cleaner(date_col):
if type(date_col) == NoneType:
pass
else:
if year(date_col) in ('1899','1900'):
date_col= 'NA'
else:
pass
return date_col
date_cleaner_udf = udf(date_cleaner, DateType())
Df3= Df2.withColumn("latest_cleaned", date_cleaner_udf("latest_travel_date"))
(下記を参照してください)しかし、私は継続的にエラーを取得しています: NameError:グローバル名を「NoneType」
が定義されていない誰も私がこれを解決するために助けてくださいことはできますか?
if type(date_col) == NoneType:
それはあなたが実際にしたいのようになります:
これを実行すると、エラーが発生します。 'NoneType'オブジェクトに '_jvm'属性がありません。 – Preyas
@Preyasは同じ行から報告されますか?あなたのスタックトレースは何ですか? –
エラーを生成する行は2つのクエリ間で変更されません。 – Preyas