pyspark의udf에 어떻게 데이터 파라미터를 전송합니까

2353 단어 spark
pyspark의udf에 어떻게 데이터 파라미터를 전송합니까
  • 문제 정의
  • 솔루션
  • 문제 정의
    pyspark에서 withColumn 함수를 사용하여 데이터 프레임의 어떤 열에 대해udf 작업을 하고 싶습니다. 예를 들어 다음과 같은 사전을 전송해야 합니다.
    def func_is_holiday(holiday_dict,date):
    	return holiday_dict[date]
    
    df = df.withColumn("is_holiday", func_is_holiday(holiday_dict,df['date'] )
    

    그런데 결과가 잘못 나왔어요.
    솔루션
    def func_is_holiday(holiday_dict):
        return udf( lambda x: holiday_dict[x])
        
    df = df.withColumn("is_holiday", func_is_holiday(holiday_dict)(df['date']) )
    

    패키지 구조를 사용하여funcis_holiday(holiday dict)의 함수만 있으면 됩니다.
    솔루션 참조: 참조

    좋은 웹페이지 즐겨찾기