python - geometria - shape length arcpy
cómo obtener el promedio de los valores de la columna del marco de datos (1)
A B
DATE
2013-05-01 473077 71333
2013-05-02 35131 62441
2013-05-03 727 27381
2013-05-04 481 1206
2013-05-05 226 1733
2013-05-06 NaN 4064
2013-05-07 NaN 41151
2013-05-08 NaN 8144
2013-05-09 NaN 23
2013-05-10 NaN 10
decir que tengo el marco de datos anterior. ¿Cuál es la forma más fácil de obtener una serie con el mismo índice que es el promedio de las columnas A y B? el promedio necesita ignorar los valores de NaN. el giro es que esta solución debe ser flexible para agregar nuevas columnas al marco de datos.
lo más cerca que he llegado fue
df.sum(axis=1) / len(df.columns)
sin embargo, esto no parece ignorar los valores de NaN
(Nota: todavía soy un poco nuevo en la biblioteca de pandas, así que supongo que hay una forma obvia de hacer esto que mi cerebro limitado simplemente no está viendo)
Simplemente usar df.mean()
hará Lo correcto (tm) con respecto a los NaN:
>>> df
A B
DATE
2013-05-01 473077 71333
2013-05-02 35131 62441
2013-05-03 727 27381
2013-05-04 481 1206
2013-05-05 226 1733
2013-05-06 NaN 4064
2013-05-07 NaN 41151
2013-05-08 NaN 8144
2013-05-09 NaN 23
2013-05-10 NaN 10
>>> df.mean(axis=1)
DATE
2013-05-01 272205.0
2013-05-02 48786.0
2013-05-03 14054.0
2013-05-04 843.5
2013-05-05 979.5
2013-05-06 4064.0
2013-05-07 41151.0
2013-05-08 8144.0
2013-05-09 23.0
2013-05-10 10.0
dtype: float64
Puede usar df[["A", "B"]].mean(axis=1)
si hay otras columnas para ignorar.