Описание тега bsxfun
A versatile and useful Matlab command for applying element-by-element binary operation to two arrays with singleton expansion enabled.
1
ответ
Оптимизация кода, который использует repmat и bsxfun
Я написал ниже код для расчета матрицы: vec0=repmat(vec,1,9); triw = (bsxfun(@times,vecO(1,:)',yc1)-bsxfun(@times,vecO(2,:)',xc1)).*(bsxfun(@times,vecO(2,:)',yc1)+bsxfun(@times,vecO(1,:)',xc1)); vec представляет собой матрицу размером 2 на 900 и xc1…
20 сен '17 в 16:36
3
ответа
Как суммировать части матрицы разных размеров, не используя для циклов?
У меня есть относительно большая матрица NxN (N~20000) и вектор Nx1, идентифицирующий индексы, которые должны быть сгруппированы вместе. Я хочу суммировать части матрицы, которая в принципе может иметь разное количество элементов и несмежных элемент…
27 июн '18 в 10:21
1
ответ
Векторизация тройной петли - MATLAB
У меня есть следующий большой, очень неэффективный цикл. P is a [2000 x 200 x 5] matrix D is a [2000 x 200 x 5] matrix S is a [200 x 1005] matrix PS is a [2000 x 1000 x 5] matrix Я хочу вычислить следующий цикл: for k=1:2000 for n=1:200 for t=1:5 P(…
07 дек '15 в 08:53
2
ответа
Матрицы Matlab разных размеров (индексация, для цикла и bsxfun)
У меня есть две матрицы разных размеров. Давайте просто определим матрицу {a} как a(1:10) <10 x 1> и матрицу {b} как b(6:10) <5 x 1>. Мне нужен цикл for или его эквивалент (bsxfun), который получает разницу между матрицей {a} и {b}, код будет повтор…
14 июн '12 в 06:35
1
ответ
Создать третью матрицу в MATLAB из комбинации двух других матриц
У меня есть два выражения в MATLAB, которые представляют матрицу 365x24. Первое выражение имеет 10, 365x24 матриц и поэтому PV_power_output(:,:,K) и второе выражение, которое снова 365x24, но с тремя возможными матрицами, поэтому WT_energy_supply(:,…
11 май '12 в 18:07
0
ответов
MATLAB - Аппроксимация интеграла с полусферной областью с выборочными данными
Неотъемлемая часть уравнения рендеринга выполняет интеграл в диапазоне полусферы (относительно телесного угла).Я могу сгенерировать образцы, которые несут значение соответствующего интеграла с этим кодом: n = 10; rho_s = 0.5; rho_d = 0.5; light_phi …
03 июн '13 в 13:45
1
ответ
Можно ли заменить bsxfun на более быструю работу?
У меня есть тысяча звонков в этой строке кода idx=sub2ind(size(I),x,y); A=bsxfun(@times,bsxfun(@times, a, d),I(idx)); B=bsxfun(@times,bsxfun(@times, b, d),I(idx)); C=bsxfun(@times,bsxfun(@times, b, c),I(idx)); D=bsxfun(@times,bsxfun(@times, a, c),I(…
25 май '17 в 02:02
1
ответ
Как векторизовать цикл двойной зависимости в Matlab?
У меня есть функция цикла, внутренний цикл которой зависит от значения вашего внешнего цикла. for jj = 1:500 for ii = jj:500 Gamma(ii,jj) =mod( ii-jj, 255); end end Я ищу способ сделать код максимально быстрым: векторизованным или bsxfun. Сейчас я и…
07 окт '17 в 13:11
1
ответ
Строка-нормализует разреженную матрицу в нулевое среднее в Matlab
У меня есть большая m *n разреженная матрица Y. Я хотел бы нормализовать каждую строку Y, чтобы каждая строка имела нулевое среднее значение. Я впервые попробовал это. Но среднее значение каждой строки также вычитается из нулевых записей, а это не т…
13 сен '12 в 00:51
2
ответа
Извлечение фиксированных объемов данных из массива на основе списка индексов
У меня есть массив a=1:20 и ряд индексов, которые указывают, где я хочу начать извлекать данные: i=[4,12] Для каждого индекса iЯ хочу этот индекс и следующие четыре (ну, xдействительно) элементы в столбце или строке. Я не буду приближаться к концу м…
13 ноя '12 в 13:03
2
ответа
Получить много трехмерных матриц из двух двумерных матриц (умножение по столбцам)
Есть ли более быстрый способ выполнить следующую операцию без цикла? n = 2; m = 1000; A = rand(n,m); B = rand(n,m); C = zeros(n*n,m); for i = 1 : m tmp = A(:,i) * B(:,i)'; C(:,i) = tmp(:); end В основном мне нужно получить m nxn матрицы с матричным …
05 дек '15 в 10:52
2
ответа
Перевод строки Matlab (bsxfun, rdivide) в Python
Я перевожу функцию Matlab на Python. К сожалению, я не эксперт по Matlab, и мне трудно понять некоторые строки, например, такую: a = [[0, 1]; [2, 3]] bsxfun(@rdivide, sqrt(a), a) Я еще не совсем понял, но я думаю, что эта строка r / a для каждой стр…
17 сен '12 в 07:18
1
ответ
Нахождение индексных позиций после умножения -spatial- matrix. bsxfun реализован
Мне нужна помощь в поиске некоторых позиций индекса матрицы и двух векторов после сложного умножения матриц, пожалуйста, потерпите меня и прочитайте то, что у меня есть сначала, мой вопрос подходит к концу. У меня есть две матрицы L1 а также L2: L1 …
17 июн '14 в 06:23
1
ответ
C++ Armadillo:- Эквивалент bsxfun от Matlab
Имеет ли Арамадилло общее назначение, эквивалентное bsxfun из matlab, который выполняет поэлементные операции, например, bsxfun(@minus,A,B)? Я видел, что броненосец имеет поэлементное умножение и деление, но нет признаков того, что обобщенная функци…
28 апр '12 в 11:31
1
ответ
Использование bsxfun с одноэлементным расширением с матрицами трех измерений
Я использую bsxfun векторизовать операцию с одноэлементным расширением между матрицами размеров: MS: (nms, nls) KS: (nks, nls) Операция представляет собой сумму абсолютных разностей между каждым значением MS(m,l) с m в 1:nms а также l в 1:nlsи кажды…
13 янв '16 в 21:52
3
ответа
Как мне перевести этот "редкий" вызов Matlab bsxfun на R?
>> A = sparse([1,2,3,4,5]) A = (1,1) 1 (1,2) 2 (1,3) 3 (1,4) 4 (1,5) 5 >> B = sparse([1;2;3;4;5]) B = (1,1) 1 (2,1) 2 (3,1) 3 (4,1) 4 (5,1) 5 >> bsxfun(@times, A, B) ans = (1,1) 1 (2,1) 2 (3,1) 3 (4,1) 4 (5,1) 5 (1,2) 2 (2,2) 4 (3,…
28 сен '12 в 20:47
2
ответа
Векторизация: друг или враг? bsxfun/arrayfun, чтобы избежать циклов, преобразования, перестановки, сжатия и т. д.
Этот вопрос связан с этим вопросом и, вероятно, с этим другим. Предположим, у вас есть две матрицы A и B. A - M-by-N, а B - N-by-K. Я хочу получить матрицу М-К-К таким образом, чтобы C(i, j) = 1 - prod(1 - A(i, :)' .* B(:, j)), Я попробовал некоторы…
19 ноя '13 в 09:16
2
ответа
Как накапливать количество появлений целочисленной последовательности?
У меня есть последовательность целых чисел, скажем arr = [1,5,2,2,5,1], Мне нужна структура, скажем Counter, это может сказать мне, сколько раз появляется целое число. У меня есть следующий код, но он не будет работать, так как isfield не может быть…
20 дек '13 в 15:53
1
ответ
Вычесть месяцы с указанной даты
Мне нужно вычесть месяцы из заданного DateCol в матрице. Я использовал команду bsxfun(@minus, datevec(date),[0,3,0,0,0,0]) вычесть 3 месяца с указанной даты. Вы можете видеть, что в этом коде есть ошибка. Если дата 1 февраля 2011 г., этот код перехо…
15 ноя '11 в 23:49
1
ответ
Реализация bsxfun при решении мин. задача оптимизации
Мне действительно нужна помощь с этим. Я должен матрицы L1 а также L2, оба (500x3) размера. Прежде всего, я вычисляю разницу каждого элемента каждого столбца L1 от L2 следующее: lib1 = bsxfun(@minus, L1(:,1)',L2(:,1)); lib1=lib1(:); lib2 = bsxfun(@m…
12 июн '14 в 09:33