es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Porcentaje de ocurrencias en una columna utilizando groupby en pandas de python.

[Introduzca la descripción de la imagen aquí]

!1

Supongamos que tengo varias entradas en una columna de términos de búsqueda y quiero calcular el porcentaje de aparición de la marca. Sé cómo obtener el recuento de cada marca, pero ¿alguien puede sugerir una forma de obtener esto en porcentaje?

df = df.groupby(["searchterm","brand"]).size().reset_index(name='count')

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para calcular el porcentaje de aparición de una marca en una columna de término de búsqueda, primero puedes agrupar los datos por término de búsqueda y marca utilizando la función groupby en pandas. Luego, utiliza la función agg para calcular el conteo total de cada marca en cada término de búsqueda.

    A continuación, puedes utilizar la función transform junto con la función sum para calcular el conteo total para cada término de búsqueda.

    Por último, divide el conteo de cada marca entre el conteo total para cada término de búsqueda y multiplica por 100 para obtener el porcentaje de aparición de cada marca en cada término de búsqueda.

    Aquí está el código actualizado:

    df = df.groupby(["searchterm", "brand"]).agg(total_count=("brand", "count")).reset_index()
    df['searchterm_total_count'] = df.groupby('searchterm')['total_count'].transform('sum')
    df['percentage'] = (df['total_count']/df['searchterm_total_count'])*100
    

    Esto te dará una nueva columna llamada “percentage” que contiene el porcentaje de aparición de cada marca en cada término de búsqueda.

Comments are closed.