GNU Octave es un lenguaje de programación de alto nivel, destinado principalmente a cálculos numéricos. También se puede utilizar para implementar varios algoritmos de aprendizaje automático con facilidad. Octave es de código abierto, es decir, es de uso gratuito, mientras que MATLAB no lo es, por lo que MATLAB requiere una licencia para operar.
A continuación se muestran las diversas funcionalidades básicas de Octave:
1. Operaciones aritméticas: Octave se puede utilizar para realizar operaciones matemáticas básicas como sumas, restas, multiplicaciones, operaciones de potencia, etc.
MATLAB
% addition operation 23 + 65 + 8 % subtraction operation 32 - 74 % power operation 6 ^ 2 % multiplication operation 45 * 7 % division operation 5 / 6
Producción :
ans = 96 ans = -42 ans = 36 ans = 315 ans = 0.83333
2. Operaciones lógicas: Octave se puede usar para realizar operaciones lógicas como AND, OR, NOT, etc.
MATLAB
% logical AND 1 && 0 % logical OR 1 || 0 % logical NOT ~1
Producción :
ans = 0 ans = 1 ans = 0
3. Operaciones relacionales: Octave se puede utilizar para realizar operaciones relacionales como mayor que, menor que, etc.
MATLAB
% equal to 1 == 1 % not equal to 0 ~= 0 % greater than 1 > 0 % less than 1 < 0 % greater than equal to 1 >= 2 % less than equal to 0 <= 0
Producción :
ans = 1 ans = 0 ans = 1 ans = 0 ans = 0 ans = 1
4. Cambio del símbolo de indicador de octava predeterminado: El símbolo de indicador de octava predeterminado es «>>». Podemos cambiar el símbolo de indicador de octava predeterminado usando los siguientes comandos:
MATLAB
PS1('<< '); PS1('@ '); PS1('# ');
Producción :
5. Variables: al igual que otros lenguajes de programación, Octave también tiene variables para almacenar datos temporalmente.
MATLAB
% variable declaration and initialization var = 2 % if we want to create the variable and don't want to print it % then put a semicolon at the end of that command var = 3; % this time the variable will not be printed % variable of datatype char ch = 'c' % storing the result of an operation in a variable res = (1 != 1) % storing the value of pi in a variable var = pi % printing a variable with disp() function disp(var); % using sprintf() function to print a string disp(sprintf('3 decimal values : %0.3f', var)) % using format long to resize format long var % using format short to resize format short var
Producción :
var = 2 ch = c res = 0 var = 3.1416 3.1416 3 decimal values : 3.142 var = 3.141592653589793 var = 3.1416
6. Arrays y Vectores: Ahora aprendamos cómo manejar arrays y vectores en Octave. Podemos crear una array como se muestra a continuación.
MATLAB
% creating matrix in row major matrix = [1 2 3; 4 5 6; 7 8 9]
Producción :
matrix = 1 2 3 4 5 6 7 8 9
También podemos hacer un vector, un vector es una array con n filas y 1 columna (vector de columna) o 1 fila con n columnas (vector de fila). aquí en el ejemplo 2 y 3 el valor medio 5 y 0.5 muestra que queremos hacer una array vectorial del rango 1 al 20 con un salto de 5 y del rango 0 al 5 con un salto de 0.5 respectivamente.
MATLAB
% creating row vector r_v = [1, 2, 3] % creating column vector c_v = [1; 2; 3]
Producción :
r_v = 1 2 3 c_v = 1 2 3
Aquí hay algunos atajos de utilidad para crear arrays y vectores:
MATLAB
% creating vector using ":" % the extreme end values denote the range % and the middle value denotes the step v1 = 1 : 5 : 20 v2 = 1 : 0.5 : 5 % without the step parameter v3 = 1 : 10 % generate matrix of size 4x4 with all element as 1 ones_matrix = ones(4, 4) % generate matrix of size 4x4 with all element as 10 M = 10 * ones(4, 4) % generate row vector of size 5 with all elements 0 zeroes_vector = zeros(1, 5) % generate row vector of some random numbers between 0 and 1 random_vector = rand(1, 5) % generate matrix of some random numbers between 0 and 1 random_matrix = rand(3, 4) % generate matrix with Gaussian distribution % where mean = 0 and variance and standard deviation = 1 gauss_matrix = randn(5, 5) % generate identity matrix with size 5x5 identity_matrix = eye(5)
Producción :
v1 = 1 6 11 16 v2 = 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000 4.5000 5.0000 v3 = 1 2 3 4 5 6 7 8 9 10 ones_matrix = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 M = 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 zeroes_vector = 0 0 0 0 0 random_vector = 0.79085 0.35395 0.92267 0.60234 0.75549 random_matrix = 0.64434 0.67677 0.54105 0.83149 0.70150 0.16149 0.38742 0.90442 0.60075 0.82273 0.37113 0.91496 gauss_matrix = 0.705921 1.336101 -0.097530 0.498245 1.125928 -0.550047 -1.868716 -0.977788 0.319715 -0.603599 -0.018352 -2.133200 0.462272 0.169707 1.733255 0.623343 0.338734 0.618943 1.110172 1.731495 -1.741052 -0.463446 0.556348 1.633956 -1.424136 identity_matrix = Diagonal Matrix 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1
7. Histogramas: Podemos dibujar la función histogramas hist(). También podemos cambiar el tamaño del cubo o los contenedores del histograma.
MATLAB
% generate a vector with 1000 elements elements_1000 = 1 + sqrt(25)*(randn(1, 1000)); hist(elements_1000 )
Producción :
MATLAB
% generate a vector with 1000 elements elements_1000 = 1 + sqrt(25)*(randn(1, 1000)); % histogram with 30 bins hist(elements_1000, 30)
Producción :
8. Ayuda: Podemos usar el comando de ayuda para ver la documentación de cualquier función.
MATLAB
help eye help sqrt help hist
Producción :
Publicación traducida automáticamente
Artículo escrito por dikshantmalidev y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA