Tag: массивы

Эффективная 2d cumsum

Скажем, у меня есть такой массив >>> a = np.arange(1,8).reshape((1,-1)) >>> a array([[1, 2, 3, 4, 5, 6, 7]]) и я хочу создать для каждого из элементов в a «cumsum of next 4 items». То есть, мой ожидаемый результат 1, 2, 3, 4, 5, 6, 7, 8 1+2, 2+3, … 1+2+3 2+3+4 … 1+2+3+4 2+3+4+5 […]

Pb конвертирует список pandas.Series в массив numpy pandas.Series

Я хотел бы преобразовать список pandas.Series в массив с множеством pandas.Series. Но когда я вызываю конструктор массива, он также преобразует мою Серию. >>> l = [Series([1,2,3]),Series([4,5,6])] >>> np.array(l) array([[1, 2, 3], [4, 5, 6]], dtype=int64) Мой список невелик (~ 10 элементов), поэтому для проблем с производительностью ( https://stackoverflow.com/questions/22212777/python-pandas-small-series-performances?noredirect1_comment33725521_22212777 ) Я бы хотел, чтобы не создавать […]

Ускорить цикл в свертке для numpy 3D-массива?

Выполнение свертки вдоль Z-вектора массива 3d numpy, затем других операций с результатами, но оно медленное, поскольку оно реализовано в настоящее время. Является ли цикл for тем, что меня замедляет, или это свертка? Я попробовал перестроить 1-й вектор и выполнить свертку за 1 проход (как в Matlab), без цикла for, но это не улучшает производительность. Моя […]

Как назначить массив 1D numpy массиву 2D numpy?

Рассмотрим следующий простой пример: X = numpy.zeros([10, 4]) # 2D array x = numpy.arange(0,10) # 1D array X[:,0] = x # WORKS X[:,0:1] = x # returns ERROR: # ValueError: could not broadcast input array from shape (10) into shape (10,1) X[:,0:1] = (x.reshape(-1, 1)) # WORKS Может ли кто-нибудь объяснить, почему numpy имеет векторы […]

Вычислить внешний продукт массивов с произвольными размерами

Я имею два массива A,B и хочу взять внешний продукт в их последнем измерении, например result[:,i,j]=A[:,i]*B[:,j] когда A,B являются двумерными , Как я могу это сделать, если я не знаю, будут ли они 2 или 3 размера? В моей конкретной задаче A,B – срезы из более крупного 3-мерного массива Z , Иногда это можно вызывать […]

Как получить суммарную сумму массива numpy на месте

Я хочу вычислить интегральное изображение. например a=array([(1,2,3),(4,5,6)]) b = a.cumsum(axis=0) Это приведет к генерации другого массива b.Can я выполняю cumsum на месте. Если не . Существуют ли другие методы для этого

Оценка функции с использованием numpy-массива возвращает inf и nan

У меня есть следующий массив и функция numpy: import numpy import scipy.special i = numpy.linspace(0, 500, 501, dtype = int) def func(x, n): return scipy.special.eval_hermite(n, x) Я оцениваю функцию для каждого элемента в моем массиве numpy i используя два разных метода оценки: Подход 1: hermites = func(0, i) Подход 2: hermites = [func(0, idx) for […]

Функция Numpy.where не находит значения внутри массива … Кто-нибудь знает, почему?

Я пытаюсь использовать функцию numpy.where python для определения местоположения определенного значения, но по какой-то причине он неверно определяет False где значение действительно найдено. Тем самым возвращается пустой массив. Смотри ниже: >>>lbpoly=numpy.array([ 5.45 5.5 5.55 5.6 5.65 5.7 5.75 5.8 5.85 5.9 5.95 6. 6.05 6.1 6.15 6.2 6.25 6.3 6.35 6.4 6.45 6.5 6.55 6.6 […]

Почему dtype показан (даже если он является родным) при использовании разделения полов с NumPy?

Обычно dtype скрывается, когда он эквивалентен dtype типу: >>> import numpy as np >>> np.arange(5) array([0, 1, 2, 3, 4]) >>> np.arange(5).dtype dtype('int32') >>> np.arange(5) + 3 array([3, 4, 5, 6, 7]) Но почему-то это не распространяется на разделение полов или по модулю: >>> np.arange(5) // 3 array([0, 0, 0, 1, 1], dtype=int32) >>> np.arange(5) […]

Итерации через динамическое число для циклов (Python)

Я использую python для последовательности некоторых чисел. Я хотел бы создать функцию, которая позволяет мне вводить значение (4, 8, 16, 32, 64 и т. Д.), Создавать массив чисел и изменять их последовательность. Я добавил цифры, которые подробно описывают, как определить последовательность для значения = 4 и 8. Для значения = 4 массив (x = [0, […]

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