Tag: numpy

Как удалить строку в массиве numpy, который содержит нуль?

Я пытаюсь написать функцию для удаления всех строк, в которых есть нулевое значение. Это не из моего кода, а пример идеи, которую я использую: import numpy as np a=np.array(([7,1,2,8],[4,0,3,2],[5,8,3,6],[4,3,2,0])) b=[] for i in range(len(a)): for j in range (len(a[i])): if a[i][j]==0: b.append(i) print 'b=', b for zero_row in b: x=np.delete(a,zero_row, 0) print 'a=',a и это […]

Как вы создаете многомерный массив numpy из итерируемого кортежей?

Я хотел бы создать массив numpy из iterable, который дает кортежи значений, например запрос к базе данных. Вот так: data = db.execute('SELECT col1, col2, col3, col4 FROM data') A = np.array(list(data)) Есть ли способ более быстрый способ сделать это, не преобразовывая итерабельность в список в первую очередь?

Найти суммы диагоналей в numpy (быстрее)

У меня есть несколько массивов с множеством массивов: array([[0, 0, 0, 1, 0, 0, 0, 0], [1, 0, 0, 0, 0, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 1], [0, 1, 0, 1, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 1, 0, 0, […]

как читать выведенную fortran двоичную матрицу NxNxN в Python

Я написал матрицу в Фортране следующим образом: real(kind=kind(0.0d0)), dimension(256,256,256) :: dense […CALCULATION…] inquire(iolength=reclen)dense open(unit=8,file=fname,& form='unformatted',access='direct',recl=reclen) write(unit=8,rec=1)dense(:,:,:) close(unit=8) Я хочу прочитать это снова на Python. Все, что я видел, это для 2D NxN массивов, а не для трехмерных массивов. В Matlab я могу прочитать это как: fid = fopen(nfilename,'rb'); mesh_raw = fread(fid,ndim*ndim*ndim,'double'); fclose(fid); mesh_reshape = reshape(mesh_raw,[ndim […]

Более быстрый способ вычисления суммы квадратов разницы между изображением (M, N) и шаблоном (3, 3) для сопоставления шаблонов?

Я реализую алгоритм синтеза текстур, как описано здесь . Для этого мне нужно рассчитать Sum of Squared Differences, метрику для оценки ошибки между template и разными позициями по image . Я выполняю медленную рабочую реализацию следующим образом: total_weight = valid_mask.sum() for i in xrange(input_image.shape[0]): for j in xrange(input_image.shape[1]): sample = image[i:i + window, j:j + […]

Что делает matplotlib `imshow (интерполяция = 'ближайший')` делать?

Я использую функцию imshow с interpolation='nearest' на изображении в градациях серого и получаю красивое цветное изображение в результате, похоже, что для меня какая-то цветовая сегментация, что именно происходит там? Я также хотел бы получить что-то вроде этого для обработки изображений, есть ли какая-то функция на массивах numpy, например, interpolate('nearest') ? EDIT: Пожалуйста, поправьте меня, если […]

Вертикальная гистограмма в Python и Matplotlib

Как сделать вертикальную гистограмму. Есть ли какой-нибудь вариант для этого или он должен быть построен с нуля? Я хочу, чтобы верхний график выглядел как внизу, но по вертикальной оси! from matplotlib import pyplot as plt import numpy as np sample=np.random.normal(size=10000) vert_hist=np.histogram(sample,bins=30) ax1=plt.subplot(2,1,1) ax1.plot(vert_hist[0],vert_hist[1][:-1],'*g') ax2=plt.subplot(2,1,2) ax2.hist(sample,bins=30) plt.show()

Numpy: Как по-разному умножить два вектора, форму (n, 1) и (n,)?

Элементное умножение двух векторов не проблема, если они оба имеют одинаковую форму, скажем, как (n, 1), так и оба (n,). Если один вектор имеет форму (n, 1) и другую (n,), то * -оператор возвращает что-то смешное. a = np.ones((3,1)) b = np.ones((3,)) print a * b Полученная nxn-матрица содержит A_ {i, j} = a_i * […]

Python: Разделить массив NumPy на основе значений в массиве

У меня есть один большой массив: [(1.0, 3.0, 1, 427338.4297000002, 4848489.4332) (1.0, 3.0, 2, 427344.7937000003, 4848482.0692) (1.0, 3.0, 3, 427346.4297000002, 4848472.7469) …, (1.0, 1.0, 7084, 427345.2709999997, 4848796.592) (1.0, 1.0, 7085, 427352.9277999997, 4848790.9351) (1.0, 1.0, 7086, 427359.16060000006, 4848787.4332)] Я хочу разбить этот массив на несколько массивов на основе второго значения в массиве (3.0, 3.0, 3.0 … […]

pydata blaze: позволяет ли параллельная обработка или нет?

Я ищу для параллелизации операций numpy или pandas. Для этого я смотрел в пыль пидаты. Мое понимание заключалось в том, что кажущаяся параллелизация была его главной точкой продаж. К сожалению, мне не удалось найти операцию, которая работает на нескольких ядрах. До сих пор существует параллельная обработка в пламени или в настоящее время только заявленная цель? […]

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