Articles of pandas groupby

pandas groupby rodando el tiempo desigual

Estoy teniendo algunos problemas con pandas rodando. Aquí una versión simplificada de mi conjunto de datos: df2 = pd.DataFrame({ ‘A’ : pd.Categorical([“test”,”train”,”test”,”train”,’train’,’hello’]), ‘B’ : (pd.Timestamp(‘2013-01-02 00:00:05’), pd.Timestamp(‘2013-01-02 00:00:10’), pd.Timestamp(‘2013-01-02 00:00:09’), pd.Timestamp(‘2013-01-02 00:01:05’), pd.Timestamp(‘2013-01-02 00:01:25’), pd.Timestamp(‘2013-01-02 00:02:05’)), ‘C’ : 1.}).sort_values(‘A’).reset_index(drop=True) >>> df2 ABC 0 hello 2013-01-02 00:02:05 1.0 1 test 2013-01-02 00:00:05 1.0 2 test 2013-01-02 […]

Pandas groupby y sum total del grupo.

Tengo un Pandas DataFrame con razones de reembolso del cliente. Contiene estas filas de datos de ejemplo: **case_type** **claim_type** 1 service service 2 service service 3 chargeback service 4 chargeback local_charges 5 service supplier_service 6 chargeback service 7 chargeback service 8 chargeback service 9 chargeback service 10 chargeback service 11 service service_not_used 12 service service_not_used […]

¿Cómo calcular vwap (precio promedio ponderado por volumen) utilizando groupby y aplicar?

He leído varias publicaciones similares a mi pregunta, pero todavía no puedo entenderlo. Tengo un df pandas que se parece a lo siguiente (durante varios días): Out[1]: price quantity time 2016-06-08 09:00:22 32.30 1960.0 2016-06-08 09:00:22 32.30 142.0 2016-06-08 09:00:22 32.30 3857.0 2016-06-08 09:00:22 32.30 1000.0 2016-06-08 09:00:22 32.35 991.0 2016-06-08 09:00:22 32.30 447.0 … […]

La mejor manera de agregar totales de grupo a un dataframe en Pandas

Tengo una tarea simple que me pregunto si hay una manera mejor / más eficiente de hacerlo. Tengo un dataframe que se ve así: Group Score Count 0 A 5 100 1 A 1 50 2 A 3 5 3 B 1 40 4 B 2 20 5 B 1 60 Y quiero agregar una […]

Iterador de ventana deslizante utilizando rodando en pandas

Si es una sola fila, puedo obtener el iterador como sigue import pandas as pd import numpy as np a = np.zeros((100,40)) X = pd.DataFrame(a) for index, row in X.iterrows(): print index print row Ahora quiero que cada iterador devuelva un subconjunto X[0:9, :] pandas.DataFrame.rolling X[0:9, :] , X[5:14, :] , X[10:19, :] pandas.DataFrame.rolling X[10:19, […]

pandas groupby donde se obtiene el máximo de una columna y el mínimo de otra columna

Tengo un dataframe de la siguiente manera: user num1 num2 a 1 1 a 2 2 a 3 3 b 4 4 b 5 5 Quiero un dataframe que tenga el mínimo de num1 para cada usuario y el máximo de num2 para cada usuario. La salida debe ser como: user num1 num2 a 1 […]

Obtención de los valores máximos del dataframe multindex de pandas

Estoy intentando recuperar solo los valores máximos (incluidos los valores de múltiples índices) de un dataframe de pandas que tiene múltiples índices. El dataframe que tengo se genera a través de una selección de grupo y columna (‘tOfmAJyI’) como esta: df.groupby(‘id’)[‘tOfmAJyI’].value_counts() Out[4]: id tOfmAJyI 3 mlNXN 4 SSvEP 2 hCIpw 2 5 SSvEP 2 hCIpw […]

Acelerar Pandas Cummin / Cummax

cummax funciones de pandas cummax y cummax parecen ser muy lentas para mi caso de uso con muchos grupos. ¿Cómo puedo acelerarlos? Actualizar import pandas as pd import numpy as np from collections import defaultdict def cummax(g, v): df1 = pd.DataFrame(g, columns=[‘group’]) df2 = pd.DataFrame(v) df = pd.concat([df1, df2], axis=1) result = df.groupby(‘group’).cummax() result = […]

Diferencia horaria dentro del grupo por objetos en Python Pandas

Tengo un dataframe que se ve así: from to datetime other ————————————————- 11 1 2016-11-06 22:00:00 – 11 1 2016-11-06 20:00:00 – 11 1 2016-11-06 15:45:00 – 11 12 2016-11-06 15:00:00 – 11 1 2016-11-06 12:00:00 – 11 18 2016-11-05 10:00:00 – 11 12 2016-11-05 10:00:00 – 12 1 2016-10-05 10:00:59 – 12 3 2016-09-06 […]

Grupo Python Pandas por fecha usando datos de fecha y hora

Tengo una columna Date_Time que deseo agrupar por fecha y hora sin crear una nueva columna. Es posible que el código actual que tengo no funcione. df = pd.groupby(df,by=[df[‘Date_Time’].date()])