Articles of funciones definidas por el usuario

Apache Spark – Asigna el resultado de UDF a múltiples columnas de marcos de datos

Estoy usando pyspark, cargando un archivo csv grande en un dataframe con spark-csv, y como paso de preprocesamiento necesito aplicar una variedad de operaciones a los datos disponibles en una de las columnas (que contiene una cadena json) . Eso devolverá los valores de X, cada uno de los cuales debe almacenarse en su propia […]

¿Cómo pasar un valor constante a Python UDF?

Pensé que si era posible crear un UDF que recibiera dos argumentos, una Column y otra variable ( Object , Dictionary o cualquier otro tipo), luego realizar algunas operaciones y devolver el resultado. En realidad, intenté hacer esto pero obtuve una excepción. Por lo tanto, me preguntaba si había alguna manera de evitar este problema. […]

Cómo agregar funciones incorporadas

Soy nuevo en la progtwigción de Python. ¿Cómo puedo agregar nuevas funciones incorporadas y palabras clave al intérprete de Python utilizando C o C ++?

Usando UDF ignora la condición cuando

Supongamos que tiene el siguiente DataFrame pyspark: data= [(‘foo’,), (‘123’,), (None,), (‘bar’,)] df = sqlCtx.createDataFrame(data, [“col”]) df.show() #+—-+ #| col| #+—-+ #| foo| #| 123| #|null| #| bar| #+—-+ Los siguientes dos bloques de código deberían hacer lo mismo, es decir, devolver la mayúscula de la columna si no es null . Sin embargo, el […]

Pasando una columna de dataframe y una lista externa a udf bajo withColumn

Tengo un dataframe Spark con la siguiente estructura. El bodyText_token tiene los tokens (procesado / conjunto de palabras). Y tengo una lista anidada de palabras clave definidas root |– id: string (nullable = true) |– body: string (nullable = true) |– bodyText_token: array (nullable = true) keyword_list=[‘union’,’workers’,’strike’,’pay’,’rally’,’free’,’immigration’,], [‘farmer’,’plants’,’fruits’,’workers’],[‘outside’,’field’,’party’,’clothes’,’fashions’]] Necesitaba verificar cuántos tokens caen en cada […]

Salir de un bucle while usando una función

¿Hay alguna forma de romper los bucles infinitos utilizando funciones? P.ej, # Python 3.3.2 yes = ‘y’, ‘Y’ no = ‘n’, ‘N’ def example(): if egg.startswith(no): break elif egg.startswith(yes): # Nothing here, block may loop again print() while True: egg = input(“Do you want to continue? y/n”) example() Esto provoca el siguiente error: SyntaxError: ‘break’ […]

Pyspark Dataframe Join usando UDF

Estoy intentando crear una unión personalizada para dos marcos de datos (df1 y df2) en PySpark (similar a esto ), con un código que se parece a esto: my_join_udf = udf(lambda x, y: isJoin(x, y), BooleanType()) my_join_df = df1.join(df2, my_join_udf(df1.col_a, df2.col_b)) El mensaje de error que estoy recibiendo es: java.lang.RuntimeException: Invalid PythonUDF PythonUDF#(col_a#17,col_b#0), requires attributes […]

Desbordamiento de stack mientras se procesan varias columnas con un UDF

Tengo un DataFrame con muchas columnas de tipo str , y quiero aplicar una función a todas esas columnas, sin cambiar el nombre de sus nombres ni agregar más columnas. Intenté usar un bucle for-in ejecutando withColumn (ver ejemplo abajo), pero normalmente cuando ejecuto el código, muestra un Stack Overflow (rara vez funciona), este DataFrame […]