我正在尝试在pyspark中运行此代码,并出现以下错误:
data.filter(
(((F.col('post_v1_web_page_name') == 'escritorio:publica:general:formulario:formulario crm tarjetas bbva:confirmacion') | (F.col('post_v1_web_page_name') == 'escritorio:publica:general:formulario:formulario crm tarjetas bbva paca:confirmacion') | (F.col('post_v1_web_page_name') == 'escritorio:publica:general:formulario:tarjeta tres meses sin:confirmacion') | (F.col('post_v1_web_page_name') == 'escritorio:publica:general:formulario:tarjetas premium:confirmacion') | (F.col('post_v1_web_page_name') == 'escritorio:publica:general:formulario:tarjeta repsol credito:confirmacion') | (F.col('post_v1_web_page_name') == 'escritorio:publica:personas:tarjeta repsol:credito:tarjetas:confirmacion') | (F.col('post_v1_web_page_name') == 'escritorio:privada:particulares:tarjeta credito:3 estudio de la solicitud:1 direccion entrega'))
| ((F.col('post_v1_web_page_name').like("%formulario:formulario%")) & (F.col('post_v1_web_page_name').like("%tarjeta%")) & (F.col('post_v1_web_page_name').like("%crm%")) & (F.col('post_v1_web_page_name').like("%confirma%")))
| ((F.col('post_v1_web_page_name').like("%escritorio:publica:personas%")) & (F.col('post_v1_web_page_name').like("%tarjetas:credito%")) & (F.col('post_v1_web_page_name').like("%confirmacion%")))
| ((F.col('post_v1_web_page_name').like("%responsive-tablet:publica:personas%")) & (F.col('post_v1_web_page_name').like("%tarjetas:credito%")) & (F.col('post_v1_web_page_name').like("%confirmacion%"))))
| (((((F.col('post_v1_web_page_name').like("%formulario:tarjetas de credito%")) | (F.col('post_v1_web_page_name').like("%formulario:tarjetas repsol%")) | (F.col('post_v1_web_page_name').like("%web-movil:publica:general:formulario:tarjeta repsol credito%")) | (F.col('post_v1_web_page_name').like("%web-movil:tarjetas:tarjeta despues%")) | (F.col('post_v1_web_page_name').like("%web-movil:formulario:tarjeta viat bbva%")) | (F.col('post_v1_web_page_name').like("%web-movil:publica:particulares:formulario:tarjeta viat%")) | (F.col('post_v1_web_page_name').like("%web-movil:formulario:tarjeta refe dorada%")) | (F.col('post_v1_web_page_name').like("%web-movil:formulario:tarjetas motor credito bbva%")) | (F.col('post_v1_web_page_name').like("%web-movil:formulario:credito tarjeta viajes movil%")) | (F.col('post_v1_web_page_name').like("%web-movil:formulario:tarjetas de credito tarjetas bbva")) | (F.col('post_v1_web_page_name').like("%web-movil:formulario:tarjetas de credito 3 meses sin%")) | (F.col('post_v1_web_page_name') == 'responsive-mobile:publica:personas:tarjetas:credito:tarjeta respsol:finalizado') | (F.col('post_v1_web_page_name') == 'responsive:mobile:publica:personas:tarjeta repsol:credito:tarjetas:nombre:finalizado'))
& (F.col('post_v1_web_page_name').like("%finalizado%"))
& (F.col('post_v1_web_page_name').notlike("%debito%")))
| ((F.col('post_v1_web_page_name') == 'web-movil:formulario:otros:2 finalizado') & (F.col('post_v47_appl_typology_name') == 'TMM'))
| ((F.col('post_v1_web_page_name').like("%publica:personas%")) & (F.col('post_v1_web_page_name').like("%tarjetas:credito%")) & (F.col('post_v1_web_page_name').like("%finalizado%")))
| ((F.col('post_v1_web_page_name').like("%card request form%")) & (F.col('post_v1_web_page_name').like("%confirmation%")))
)))
答案 0 :(得分:0)
此错误意味着您尝试在一个或多个F.col
实例上调用一个不可用的函数。例如,据我所知,this question.可能是notlike
。{p>
一般说明:您正在开发的条件很难被其他开发人员维护,也可能难以理解。我建议将条件分为多个变量,并逐步进行组合。 例如
condition_is_required_pattern = F.col('post_v1_web_page_name').like("%finalizado%") | F.col('post_v1_web_page_name').like("%otherRegex%")
condition_not_illegal_pattern = ~ F.col('post_v1_web_page_name').like("%debito%")
data_filterd = data.filter(
condition_is_required_pattern
& condition_not_illegal_pattern
)