Come posso concatenare matrici delle stesse colonne ma un numero diverso di righe? Ad esempio, I desidera concatenare un (dim(a) = 15 7000)
e b (dim(b) = 16 7000)
e voglio che il risultato sia una matrice di 31
righe per 7000
colonne. Posso farlo per matrici di diverse righe e colonne? Dire che voglio combinare una matrice di 15 righe e 7000 colonne con un'altra di 16 righe e 7500 colonne. Posso creare un set di dati con quello?Matrici concatenanti in R
risposta
Suona come siete alla ricerca di rbind
:
> a<-matrix(nrow=10,ncol=5)
> b<-matrix(nrow=20,ncol=5)
> dim(rbind(a,b))
[1] 30 5
Allo stesso modo, cbind
pile le matrici in senso orizzontale.
Non sono del tutto sicuro di cosa si intende per l'ultima domanda ("Posso fare questo per le matrici di diverse righe e colonne.?")
cbindX dal pacchetto GData combina più colonne di diverse lunghezze di colonne e file. Controlla la pagina qui:
http://hosho.ees.hokudai.ac.jp/~kubo/Rdoc/library/gdata/html/cbindX.html
Ci vuole più le matrici e le data.frames separati da virgola come input :) Hai solo bisogno di
install.packages("gdata", dependencies=TRUE)
e poi
library(gdata)
concat_data <- cbindX(df1, df2, df3) # or cbindX(matrix1, matrix2, matrix3, matrix4)
Questa è di gran lunga la soluzione più veloce che ho provato. – Datageek
'cbindX' è una grande funzione, ma l'OP si limita a chiedere informazioni sulle matrici di unione per riga (si noti le dimensioni del risultato che specificano), non per colonna, e ** gdata ** non contiene una funzione rbind analoga. Esiste tuttavia una funzione 'rbind.fill' in ** plyr **. – joran
Inoltre, il mio commento che la loro domanda non era ben definita era corretta. Sembra che tu stia ignorando questa parte: "L'obiettivo è di scorrere ogni riga e trovare il valore massimo." Non è del tutto chiaro che cosa intendesse l'OP. Se solo riempissero le celle mancanti con NA, avrei semplicemente consigliato rbind.fill. – joran
- 1. Attributi concatenanti NSPredicate
- 2. Modifica in posto delle matrici in R
- 3. Creazione di Identità matrici in R
- 4. R - dati frame - convertire matrici sparse
- 5. Combinazione di matrici in un array in R
- 6. Cambiare dimnames di matrici e frame di dati in R
- 7. Scrivere e leggere le matrici 3D in R
- 8. è possibile avere una matrice di matrici in R?
- 9. Matrici di unione da due elenchi in R
- 10. Creazione di matrici di destinazione di origine con R
- 11. K & R Esempio Qsort con confusione di puntatori e matrici
- 12. Matrici ALLOCATABLE o matrici POINTER?
- 13. Matrici limitate in Ruby
- 14. matrici multidimensionali in awk
- 15. Matrici in Objective-C
- 16. Matrici concatenate in elisir
- 17. Julia: assegnazione in matrici
- 18. matrici generatrici/utilizzo esterno
- 19. Conversione di matrici di stringhe su matrici di galleggianti
- 20. Archiviazione di matrici annidate in un cookie
- 21. Errore relativo tra due matrici
- 22. Matrici associative?
- 23. Confronto di matrici in C#
- 24. Matrici non inizializzate in Julia
- 25. Moltiplicare più matrici in numpy
- 26. Matrici di stampa in Java
- 27. matrici Growing columnwise in NumPy
- 28. Elenco di matrici in Java
- 29. Numpy converte scalari in matrici
- 30. R - Subsetting a gruppo di matrici in base a una condizione
Dire che voglio combinare una matrice di 15 righe e 7000 colonne e un'altra di 16 rwos e 7500 colonne. L'obiettivo è quello di scorrere ogni riga e trovare il valore massimo. – Dombey
@GTyler La domanda per combinare 15x7000 e 16x7500 non è ben definita. Dovrai modificare la tua domanda (non lasciare un commento) per specificare cose come: quale dimensione è il risultato? cosa succede a tutte le righe/colonne in eccesso? in che modo ciascun elemento della matrice risultante viene determinato in modo univoco? – joran
@joran Non sono d'accordo e penso anche che rbind o cbind siano le funzioni sbagliate per questo problema! Essere in grado di combinare frame di dati o matrici di numeri di riga e/o colonna diversi è più adatto a cbindX, come menzionato di seguito! – gawbul