Tag: scipy

Как интерпретировать верхнюю / нижнюю границу datapoint с доверительными интервалами?

Учитывая список значений: >>> from scipy import stats >>> import numpy as np >>> x = list(range(100)) Используя t-тест ученика, я могу найти доверительный интервал распределения в среднем с альфой 0,1 (т. Е. С доверием 90%) с: def confidence_interval(alist, v, itv): return stats.t.interval(itv, df=len(alist)-1, loc=v, scale=stats.sem(alist)) x = list(range(100)) confidence_interval(x, np.mean(x), 0.1) [вне]: (49.134501289005009, 49.865498710994991) […]

Python – эффективный способ найти наибольшую площадь определенного значения в массиве 2D numpy

У меня есть 2D-массив numpy, где некоторые значения равны нулю, а некоторые нет. Я пытаюсь найти эффективный способ найти самый большой кусок нулей в массиве (возвращая количество нулей, а также приблизительное представление о том, где находится центр) Например, в этом массиве я хотел бы найти скопление 9 с центром (3,4): [[ 1, 1, 1, 0, […]

Индексируйте разреженную матрицу SciPy с массивом булевых

Массивы NumPy можно индексировать с помощью массива логических элементов, чтобы выбрать строки, соответствующие True записям: >>> X = np.array([[1,2,3], [4,5,6], [7,8,9]]) >>> rows = np.array([True,False,True]) >>> X[rows] array([[1, 2, 3], [7, 8, 9]]) >>> X[np.logical_not(rows)] array([[4, 5, 6]]) Но это кажется невозможным с разреженными матрицами SciPy; индексы берутся как числовые, поэтому False select row 0 […]

scipy – генерировать случайные величины с корреляциями

Я работаю над реализацией базового симулятора Monte Carlo в Python для некоторого моделирования рисков управления проектами, которое я пытаюсь сделать (в основном Crystal Ball / @Risk, но в Python). У меня есть набор из n случайных величин (все экземпляры scipy.stats ). Я знаю, что я могу использовать rv.rvs(size=k) для генерации k независимых наблюдений от каждой […]

Почему SciPy возвращает отрицательные p-значения для чрезвычайно малых значений p с точным тестом Fisher?

Я заметил, что точный критерий Фишера в SciPy возвращает отрицательное значение p, если p-значение крайне мало: >>> import scipy as sp >>> import scipy.stats >>> x = [[48,60],[3088,17134]] >>> sp.stats.fisher_exact(x) (4.4388601036269426, -1.5673906617053035e-11) В R, используя ту же таблицу 2×2: > a = matrix(c(48,60,3088,17134), nrow=2) > fisher.test(a) p-value = 6.409e-13 Мой вопрос: 1) почему SciPy возвращает […]

процентильный ранг в пандах в группах

Я не могу понять, как написать функцию для выполнения сгруппированного процентиля. У меня есть все команды с 1985 по 2012 год в кадре данных; первые 10 показаны ниже: в настоящее время они сортируются по годам. Я хотел дать процентиль для LgRnk сгруппированного по Year . Так, например, 23 LgRank (худшая команда) за 1985 год будет […]

Ошибка выполнения SciPy curve_fit, остановка итерации

Я использую scipy.optimize.curve_fit() итеративным способом. Моя проблема в том, что, когда она не может соответствовать параметрам, вся программа (и, следовательно, итерация) останавливается, это ошибка, которую она дает: RuntimeError: Optimal parameters not found: Number of calls to function has reached maxfev = 800. Я понимаю, почему он не смог поместиться. Моя проблема заключается в том, что […]

Вызов функций Python из встроенного C с помощью scipy.weave

Можно ли вызвать функцию python из встроенного кода C (используя переплетение)? Мотивация: у меня есть немного кода, который я бы хотел оптимизировать, и я определил узкое место в одной функции. После моих обычных трюков я обычно переключаюсь на scipy.weave.inline для оптимизации. К сожалению, в этом случае моя функция вызывает другую функцию python во внутреннем цикле. […]

Обманывание numpy / python в представлении очень больших и очень маленьких чисел

Мне нужно вычислить интеграл следующей функции в пределах диапазонов, начинающихся с -150 : import numpy as np from scipy.special import ndtr def my_func(x): return np.exp(x ** 2) * 2 * ndtr(x * np.sqrt(2)) Проблема в том, что эта часть функции np.exp(x ** 2) стремится к бесконечности – я получаю inf для значений x меньше, чем […]

Построение дендрограммы в ошибке Scipy для большого набора данных

Я использую Scipy для иерархической кластеризации. Мне удается получить плоские кластеры на пороге, используя fcluster. Но мне нужно визуализировать сформированную дендрограмму. Когда я использую метод дендрограммы, он отлично работает для пользовательских векторов 5-6 тыс. Но мой dataser состоит из пользовательских векторов 16k. Когда я запускаю его для 16k пользователей, функция dendrogram вызывает следующую ошибку: File […]

Python - лучший язык программирования в мире.