Siguiendo con Scilab me he topado con otro problema.
Quiero hacer una división elemento a elemento
A = [3;4;2;0;1;2;6;1];
b = 9;
Lo lógico es usar ./ para dividir y no usar un ciclo for, pero cuando hago la división
A./b
Obtengo un error porque uno de los elementos es un cero. ¿Cómo puedo evitarlo sin usar un for?
Por ahora la única solución que se me ha ocurrido es reemplazar los 0 por un número "muy pequeño" sé que no es la forma correcta de hacerlo, pero como en mi caso no necesito mucha precisión me viene bien. Al final lo arreglo de la siguiente forma:
A(vectorfind(A, 0, 'r')) = 1.d-10;
A./b
Notas al azar es un lugar para aventar todo lo que no sé dónde poner, por eso también vínculo del blog vayadesorden.
miércoles, 10 de noviembre de 2010
Eliminar una fila en una matriz de Scilab
Soy totalmente nuevo en Scilab, no llevo utilizandolo ni una semana, pero ya he necesitado hacer cosas raras con el así que ya le estoy tomando cariño. ;-)
He buscado alguna forma para eliminar una fila de una matriz en Scilab, me rompí la cabeza con un millón de formas de hacerlo, primero creí que con
A = [A(1:i-1, :); A(i+1:$, :)];
bastaba pero en algunas ocasiones me daba un error de apuntadores. Después programé una función removeRow:
function A = removeRow(A, i)
if i == 1 then
if size(A, 1) <= 1 then
A = [];
else
A = A(2:$,:);
end
elseif i == size(A, 1) then
A = A(1:$-1, :);
else
A = [A(1:i-1, :); A(i+1:$, :)];
end
endfunction
Pero al final encontré que bastaba con hacer
A(i,:) = [];
Vaya forma tuve de complicarme la vida.... :-P
He buscado alguna forma para eliminar una fila de una matriz en Scilab, me rompí la cabeza con un millón de formas de hacerlo, primero creí que con
A = [A(1:i-1, :); A(i+1:$, :)];
bastaba pero en algunas ocasiones me daba un error de apuntadores. Después programé una función removeRow:
function A = removeRow(A, i)
if i == 1 then
if size(A, 1) <= 1 then
A = [];
else
A = A(2:$,:);
end
elseif i == size(A, 1) then
A = A(1:$-1, :);
else
A = [A(1:i-1, :); A(i+1:$, :)];
end
endfunction
Pero al final encontré que bastaba con hacer
A(i,:) = [];
Vaya forma tuve de complicarme la vida.... :-P
domingo, 7 de noviembre de 2010
El cambio de horario
En Pittsburgh hasta hoy por la madrugada se ha hecho el cambio, de horario de verano a horario de invierno, y me ha dado risa ver como las estadísticas de la batería de mi computadora hacían algo un tanto extraño.
Cosas del cambio de horario.
Suscribirse a:
Entradas (Atom)