Более эффективный взвешенный коэффициент Джини в питонеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Более эффективный взвешенный коэффициент Джини в питоне

Сообщение Anonymous »

за https://stackoverflow.com/a/48981834/1840471, это реализация взвешенного коэффициента Джини в Python:

Код: Выделить всё

import numpy as np
def gini(x, weights=None):
if weights is None:
weights = np.ones_like(x)
# Calculate mean absolute deviation in two steps, for weights.
count = np.multiply.outer(weights, weights)
mad = np.abs(np.subtract.outer(x, x) * count).sum() / count.sum()
rmad = mad / np.average(x, weights=weights)
# Gini equals half the relative mean absolute deviation.
return 0.5 * rmad
Это чисто и хорошо работает для массивов среднего размера, но, как предупреждено в своем первоначальном предложении (https://stackoverflow.com/a/39513799/1840471) это (n 2 ). На моем компьютере это означает, что он ломается после ~ 20K строк: < /p>

n = 20000 # Works, 30000 fails.
gini(np.random.rand(n), np.random.rand(n))
< /code>

Можно ли это настроить для работы для более крупных наборов данных? Моя - ~ 150 тыс.>

Подробнее здесь: https://stackoverflow.com/questions/489 ... -in-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Получить кривую Лоренца и коэффициент Джини в пандах
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Взвешенный по краям Spring Embedded Layout на основе идентичности в py4cytoscape
    Anonymous » » в форуме Python
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • Учитывая любой взвешенный график g = (v, e) и вершины s, t∈V
    Anonymous » » в форуме Javascript
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Взвешенный усреднение списка
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как получить максимальный уровень масштабирования (не коэффициент) на iPhone?
    Anonymous » » в форуме IOS
    0 Ответы
    41 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»