Tag: numpy

В чем разница между MATLAB / Octave corr и Python numpy.correlate?

Я пытаюсь перенести программу MATLAB / Octave на Python, используя NumPy 1.8.0 и Python 2.7.3. Я использовал эту ссылку в качестве помощи в преобразовании функций MATLAB в методы NumPy с большим успехом, пока не дойду до точки, где я хочу вычислить корреляцию между двумя матрицами. Первая матрица – 40000×25 поплавков, вторая – 40000×1. В Octave […]

Десятичные десятичные знаменательные знаки Python numpy

Я пытаюсь уменьшить количество десятичных знаков, которые получаю после некоторых вычислений. print() котором возникает моя проблема, выглядит следующим образом: print("Mean resistivity: {res} Ohm m".format(res=np.mean(resistivity))) И это выводит это: Mean resistivity: 1.6628449915450776e-08 Ohm m Теперь я хочу уменьшить количество десятичных знаков, которые были напечатаны до 3. Я попытался сделать это с форматированием строки, например: print("Mean resistivity: […]

Массивная матрица масок на основе индекса

Как маскировать массив на основе фактических значений индекса? То есть, если у меня есть матрица 10 x 10 x 30, и я хочу замаскировать массив, когда первый и второй индексы равны друг другу. Например, [1, 1 , :] следует маскировать, потому что 1 и 1 равны друг другу, но [1, 2, :] не должны, потому […]

Как вычислить дисперсию столбца разреженной матрицы в Scipy?

У меня есть большая scipy.sparse.csc_matrix и хочу ее нормализовать. Это вычитает среднее значение столбца из каждого элемента и делит на стандартное отклонение столбца (std) i. scipy.sparse.csc_matrix имеет .mean() но есть ли эффективный способ вычисления дисперсии или std?

подсчет вхождения массивов в многомерных массивах в python

У меня есть следующие типы массивов: a = array([[1,1,1], [1,1,1], [1,1,1], [2,2,2], [2,2,2], [2,2,2], [3,3,0], [3,3,0], [3,3,0]]) Я хотел бы подсчитать количество вхождений каждого типа массива, например, [1,1,1]:3, [2,2,2]:3, and [3,3,0]: 3 Как я могу достичь этого в python? Возможно ли использование цикла for и подсчет в словаре? Он должен быть быстрым и должен занимать […]

Альтернатива `numpy.tile` для периодической маски

У меня есть изображение, хранящееся в массиве uint8 s, формы (planes, rows, cols) . Мне нужно сравнить его с значениями, хранящимися в маске, также uint8 s, формы (mask_rows, mask_cols) . Хотя изображение может быть очень большим, маска обычно маленькая, обычно (256, 256) и должна быть разбита на image . Чтобы упростить код, rows = 100 […]

Почему X.dot (XT) требует столько памяти в numpy?

X – матрица с трещиной, где p много больше n. Скажем, n = 1000 и p = 500000. Когда я запускаю: X = np.random.randn(1000,500000) S = X.dot(XT) Выполнение этой операции заканчивается тем, что занимает большую часть памяти, несмотря на то, что результат имеет размер 1000 x 1000. Использование памяти возвращается после завершения операции. Есть ли […]

Подкласс numpy ndarray не работает должным образом

`Привет, все. Я обнаружил, что при подклассификации ndarray существует странное поведение. import numpy as np class fooarray(np.ndarray): def __new__(cls, input_array, *args, **kwargs): obj = np.asarray(input_array).view(cls) return obj def __init__(self, *args, **kwargs): return def __array_finalize__(self, obj): return a=fooarray(np.random.randn(3,5)) b=np.random.randn(3,5) a_sum=np.sum(a,axis=0,keepdims=True) b_sum=np.sum(b,axis=0, keepdims=True) print a_sum.ndim #1 print b_sum.ndim #2 Как вы видели, аргумент keepdims не работает для […]

Скрытый семантический анализ в несоответствии Python

Я пытаюсь следовать статье Википедии о скрытой семантической индексации в Python, используя следующий код: documentTermMatrix = array([[ 0., 1., 0., 1., 1., 0., 1.], [ 0., 1., 1., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0., 1., 1.], [ 0., 0., 0., 1., 0., 0., 0.], [ 0., 1., 1., 0., 0., 0., […]

Как индексировать несколько элементов массива с интервалами в Python

Предположим, что у меня есть список: import numpy as np a = [2, 4, 6, 8, …, 1000] # total 500 elements b = np.array(a) # numpy version Я хочу получить от 1-го до 100-го, от 201-го до 300-го, от 401-го до 500-го элементов и превратить их в новый массив. С этой целью я пробовал […]

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