Estoy tratando de crear una matriz que sea 3 x n, con cada una de las columnas siendo la misma. ¿Cuál es la forma más fácil de lograrlo? ¿Concatenación?MATLAB: Rellenar una matriz con cada columna siendo la misma
Respuesta
Después
n=7
x=[1;2;3]
es o
repmat(x,[1 n])
o
x(:,ones(1,n))
Yo diría que la solución basada en índices es el camino a seguir (y en general es más rápido). – gnovice
Gracias. repmat es la palabra clave que estaba buscando, pero lo olvidé. – stanigator
(Octave se puede considerar como un/versión gratuita de código abierto de MATLAB)
octave-3.0.3:2> rowvec = [1:10]
rowvec =
1 2 3 4 5 6 7 8 9 10
octave-3.0.3:3> [rowvec; rowvec; rowvec]
ans =
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
Uso repmat
si el número de filas es grande.
octave-3.0.3:7> repmat(rowvec, 10, 1)
ans =
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
Uso multiplicación con una matriz 1 x 3 de los
por ejemplo, x * [1 1 1]
Editar:
En Octave:
octave-3.0.3.exe:1> x = [1;2;3;4]
x =
1
2
3
4
octave-3.0.3.exe:5> x * [1 1 1]
ans =
1 1 1
2 2 2
3 3 3
4 4 4
Esto da '[x x x]'. – kennytm
Funciona en Octave - ver la edición – James
Creo que @KennyTM podría significar que da '[x x x]' (donde 'x' es un vector de columna), cuando el OP quiere' [x; X; x] '(donde' x' es un vector de fila, como en su respuesta), pero la pregunta es ligeramente ambigua, de ahí mi respuesta. – Ramashalanka
- 1. ¿Cómo multiplico los elementos en cada columna, por cada columna en una matriz en MATLAB?
- 2. ¿Cómo puedo aplicar una función a cada fila/columna de una matriz en MATLAB?
- 3. Rellenar la matriz de Javascript con C#
- 4. Multiplicar cada columna de una matriz por otra matriz
- 5. ¿Cómo seleccionar un elemento de cada columna de una matriz en matlab?
- 6. Seleccionar una columna específica en cada fila de la matriz
- 7. Matlab: asignar a la matriz con pares índice de la columna \ fila
- 8. Rellenar otra matriz desde la matriz - Javascript
- 9. Rellenar una columna por cada fila en una base de datos
- 10. Matlab, ¿Cómo comparo cada elemento de una matriz de filas con cada elemento de otra matriz de filas?
- 11. Rellenar lista desplegable seleccionar con una matriz usando jQuery
- 12. ocurrencias contar con una matriz utilizando MATLAB
- 13. Matlab: ¿ejecuta una función con parámetros para cada elemento de una matriz?
- 14. ¿Cómo puedo ordenar una matriz 2-D en MATLAB con respecto a una columna?
- 15. ploteando histograma múltiple en la misma figura con diferente color en matlab
- 16. Cómo rellenar una matriz con datos de conjunto de registros
- 17. SQL Insertar varias filas con una columna siempre la misma y una columna diferente
- 18. una matriz de punteros que apuntan a la misma matriz
- 19. Obtenga una columna diferente en cada fila
- 20. Copie una fila o columna de una matriz e insértela en la siguiente fila/columna
- 21. Dividir una matriz en MATLAB
- 22. Anexar cadena a la matriz de Matlab
- 23. Rellenar la matriz de JavaScript de la lista JSP
- 24. Rellenar una línea con jline
- 25. Columna de texto MySQL siendo truncada
- 26. Conseguir índice de la primera aparición de un valor en cada columna de una matriz
- 27. SELECCIONAR con múltiples condiciones WHERE en la misma columna
- 28. sqlite: cómo rellenar una nueva columna con valores una vez que se ha agregado una nueva columna?
- 29. Matlab - restar rápidamente [1xN] Array de [MxN] elementos de matriz
- 30. ¿Cómo se dividen los elementos de la matriz por sumas de columna en MATLAB?
No está claro. ¿Quieres [1 1 1; 2 2 2; 3 3 3] donde las columnas son idénticas o desea [1 2 3; 1 2 3; 1 2 3] donde cada columna tiene el mismo número? – MatlabDoug
similar Q: http://stackoverflow.com/questions/2209207/producing-2d-array-from-a-1d-array-in-matlab – Amro