добавление средней строки в фрейм данных, который включает "-" - PullRequest
1 голос
/ 23 октября 2019

Я преобразовал значения np.nan в «-» и хочу добавить среднюю строку в мой новый фрейм данных, но я не получаю среднее значение вывода.

date         col1  col2  col3
2019-10-10     5    2      4
2019-10-11     -    3      0
2019-10-12     7    -      -
2019-10-13     0    5      6
2019-10-14     2    -      3

Это значение, которое я хочу:

date         col1   col2  col3
2019-10-10     5     2      4
2019-10-11     -     3      0
2019-10-12     7     -      -
2019-10-13     0     5      6
2019-10-14     2     -      3

Avrg.         3.5   3.3    3.25

Возможно ли это сделать?

1 Ответ

0 голосов
/ 23 октября 2019

Используйте DataFrame.mask с преобразованием значений в floats и mean и добавьте в последнюю строку с DataFrame.loc:

#if not DatetimeIndex
#df = df.set_index('date')

df.loc['Avrg.'] = df.mask(df == '-').astype(float).mean()
print (df)
           col1     col2  col3
date                          
2019-10-10    5        2     4
2019-10-11    -        3     0
2019-10-12    7        -     -
2019-10-13    0        5     6
2019-10-14    2        -     3
Avrg.       3.5  3.33333  3.25
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...