times, .*
Multiplicación
Sintaxis
Descripción
C =
multiplica los arreglos A
.*B
A
y B
multiplicando los elementos correspondientes. Los tamaños de A
y B
deben ser los mismos o ser compatibles.
Si los tamaños de A
y B
son compatibles, los dos arreglos se amplían implícitamente para coincidir el uno con el otro. Por ejemplo, si A
o B
es un escalar, el escalar se combina con cada elemento del otro arreglo. Además, los vectores con distintas orientaciones (un vector fila y un vector columna) se amplían implícitamente para formar una matriz.
Ejemplos
Cree dos vectores, A
y B
, y multiplíquelos elemento por elemento.
A = [1 0 3]; B = [2 3 7]; C = A.*B
C = 1×3
2 0 21
Cree dos arreglos de 3 por 3, A
y B
, y multiplíquelos elemento por elemento.
A = [1 0 3; 5 3 8; 2 4 6]; B = [2 3 7; 9 1 5; 8 8 3]; C = A.*B
C = 3×3
2 0 21
45 3 40
16 32 18
Cree un vector fila a
y un vector columna b
y, después, multiplíquelos. El vector fila de 1 por 3 y el vector columna de 4 por 1 se combinan para generar una matriz de 4 por 3.
a = 1:3; b = (1:4)'; a.*b
ans = 4×3
1 2 3
2 4 6
3 6 9
4 8 12
El resultado es una matriz de 4 por 3, donde cada elemento (i,j) de la matriz es igual a a(j).*b(i)
:
Desde la versión R2023a
Cree dos tablas y multiplíquelas. Los nombres de las filas (si están presentes en ambas) y los nombres de las variables deben ser iguales, pero no necesitan estar en el mismo orden. Las filas y las variables de la salida están en el mismo orden que la primera entrada.
A = table([1;2],[3;4],VariableNames=["V1","V2"],RowNames=["R1","R2"])
A=2×2 table
V1 V2
__ __
R1 1 3
R2 2 4
B = table([4;2],[3;1],VariableNames=["V2","V1"],RowNames=["R2","R1"])
B=2×2 table
V2 V1
__ __
R2 4 3
R1 2 1
C = A .* B
C=2×2 table
V1 V2
__ __
R1 1 6
R2 6 16
Argumentos de entrada
Operandos, especificados como escalares, vectores, matrices, arreglos multidimensionales, tablas u horarios. Las entradas A
y B
deben ser del mismo tamaño o tener tamaños compatibles (por ejemplo, A
es una matriz M
por N
y B
es un escalar o un vector fila 1
por N
). Para obtener más información, consulte Tamaños de arreglos compatibles para operaciones básicas.
Los operandos con un tipo de datos enteros no pueden ser complejos.
Las entradas que son tablas u horarios deben satisfacer estas condiciones: (desde R2023a)
Si una entrada es una tabla o un horario, todas sus variables deben tener tipos de datos que admitan la operación.
Si solo una entrada es una tabla u horario, la otra entrada debe ser un arreglo lógico o numérico.
Si ambas entradas son tablas u horarios:
Ambas entradas deben tener el mismo tamaño, o bien una de ellas debe ser una tabla de una fila.
Ambas entradas deben tener variables con los mismos nombres. Sin embargo, las variables de cada entrada pueden estar en un orden diferente.
Si ambas entradas son tablas y ambas tienen nombres de filas, los nombres de sus filas deben ser los mismos. Sin embargo, los nombres de las filas de cada entrada pueden estar en un orden diferente.
Si ambas entradas son horarios, las horas de sus filas deben ser iguales. Sin embargo, las horas de las filas de cada entrada pueden estar en un orden diferente.
Tipos de datos: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| categorical
| duration
| calendarDuration
| table
| timetable
Soporte de números complejos: Sí
Capacidades ampliadas
La función times
es totalmente compatible con los arreglos altos. Para obtener más información, consulte Arreglos altos.
Notas y limitaciones de uso:
Es posible que la multiplicación de números imaginarios puros por números no finitos no coincida con MATLAB®. El generador de código no se especializa en la multiplicación por números imaginarios puros; no elimina cálculos con la parte real cero. Por ejemplo,
(Inf + 1i)*1i = (Inf*0 – 1*1) + (Inf*1 + 1*0)i = NaN + Infi
.Si utiliza
times
con operandos de tipo simple y de tipo doble, es posible que el código generado no produzca el mismo resultado que MATLAB. Consulte Binary Element-Wise Operations with Single and Double Operands (MATLAB Coder).
Notas y limitaciones de uso:
Es posible que la multiplicación de números imaginarios puros por números no finitos no coincida con MATLAB. El generador de código no se especializa en la multiplicación por números imaginarios puros; no elimina cálculos con la parte real cero. Por ejemplo,
(Inf + 1i)*1i = (Inf*0 – 1*1) + (Inf*1 + 1*0)i = NaN + Infi
.
Las entradas no pueden ser del tipo de datos logical
.
Esta función es totalmente compatible con entornos basados en subprocesos. Para obtener más información, consulte Ejecutar funciones de MATLAB en entornos basados en subprocesos.
La función times
es totalmente compatible con los arreglos de GPU. Para ejecutar la función en una GPU, especifique los datos de entrada como un gpuArray
(Parallel Computing Toolbox). Para obtener más información, consulte Run MATLAB Functions on a GPU (Parallel Computing Toolbox).
Esta función es totalmente compatible con los arreglos distribuidos. Para obtener más información, consulte Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).
Historial de versiones
Introducido antes de R2006aEl operador times
admite operaciones directamente en las tablas y en los horarios sin indexar para acceder a sus variables. Todas las variables deben tener tipos de datos que admitan la operación. Para obtener más información, consulte Direct Calculations on Tables and Timetables.
A partir de la versión R2020b, times
es compatible con la ampliación implícita cuando los argumentos son arreglos calendarDuration
, categorical
o duration
. Entre las versiones R2020a y R2016b, la ampliación implícita solo era compatible para tipos de datos numéricos.
A partir de la versión R2016b con la incorporación de la ampliación implícita, algunas combinaciones de argumentos para operaciones básicas que anteriormente devolvían errores ahora generan resultados. Por ejemplo, anteriormente no podía añadir un vector fila y columna, pero ahora dichos operandos están disponibles para que se añadan. En otras palabras, una expresión como [1 2] + [1; 2]
anteriormente devolvía un error de falta de coincidencia de tamaños, pero ahora se ejecuta.
Si su código utiliza operadores elemento por elemento y se basa en los errores que MATLAB devolvía anteriormente para tamaños que no coincidían, especialmente dentro de un bloque try
/catch
, es posible que su código deje de detectar esos errores.
Para obtener más información sobre los tamaños de entrada necesarios para operaciones básicas con arreglos, consulte Tamaños de arreglos compatibles para operaciones básicas.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)