Numpy Broadcasting - статистика - PullRequest
       13

Numpy Broadcasting - статистика

0 голосов
/ 09 декабря 2018

Существует ли решение для простого вещания для создания матрицы, которая выводит стандартное отклонение между всеми столбцами в DataFrame?

Следующее решение было очень полезным, но оно работает только для среднего значения (например, независимость и т. Д.) Pandas - Создание матрицы различий из фрейма данных .
Спасибо @divakar, @ayhan, @jezrael и другим в этом обсуждении

Вводом будет DfA

0  A1     B1     C1
1  8.01   9.29   7.31
2  8.23   9.05   7.46
3  8.16   9.68   7.34
4  8.27   8.95   7.05 

2 желаемых выхода - DfM и DfStd со средним ипдев различий между каждым столбцом.

0   St1   St2   St3
1 a1-a1  b1-a1  c1-a1
2 a1-b1  b1-b1  c1-b1
3 a1-c1  b1-c1  c1-c1

Мне удалось вывести матрицу средних с помощью функции np.subtract.outer, описанной в предыдущем посте, с помощью команды:

[in]:arrmean = np.subtract.outer(*[dfA.mean()]*2).T
[out]: a 3x3 arrear with 9 elements 

Это работает, поскольку средство diffдает те же результаты, что и разница средств.Для Std отношения не выполняются.Использование np.subtract.outer(*[dfA.std()]*2).T дает неверные результаты матрицы.Я пытаюсь заменить [dfA.std()] на [np.std(dfA['A1'] - dfA['B1']), но это приводит к задолженности с 1x1, нулевым значением (очевидная ошибка)

Есть идеи?

Я получил решение вручную, но был бы очень признателен за сценарий.

1 Ответ

0 голосов
/ 16 декабря 2018

Обновление: мне не удалось найти прямую формулу для построения матрицы для стандартного отклонения разницы между ВСЕМИ комбинациями столбцов в кадре данных.Единственным способом было: 1) выполнить итерацию между всеми комбинациями столбцов (n) в dfA [(n * (n-1)) / 2] и создать новый df (dfB).2) получить описательную статистику по dfB и построить матрицу из описания df (B).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...