Por ejemplo, tengo una mesa
UNA
id price sum
1 2 0
1 6 0
1 4 0
2 2 0
2 10 0
2 1 0
2 5 0
3 1 0
3 5 0
Lo que quiero es como (la última fila de sum
debe ser la suma price
de un grupo)
id price sum
1 2 0
1 6 0
1 4 12
2 2 0
2 10 0
2 1 0
2 5 18
3 1 0
3 5 6
Lo que puedo hacer es averiguar la suma usando
A['price'].groupby(A['id']).transform('sum')
Sin embargo, no sé cómo asignar esto a la sum
columna (última fila).
Gracias
Úselo last_valid_index
para ubicar filas para llenar
g = df.groupby('id')
l = pd.DataFrame.last_valid_index
df.loc[g.apply(l), 'sum'] = g.price.sum().values
df
id price sum
0 1 2 0
1 1 6 0
2 1 4 12
3 2 2 0
4 2 10 0
5 2 1 0
6 2 5 18
7 3 1 0
8 3 5 6
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras