2016-03-19 10 views
0

Ich bin hier etwas verwirrt: Ich habe diese Variable gene <-c("IDH3G", "SSR4"). wenn ich c(gene,gene) tun, erhalte ich: "IDH3G" "SSR4" "IDH3G" "SSR4", aber wenn ich cbind (gene, gene) tun, erhalte ich:cbind und kombinieren in R

gene gene 
[1,] "IDH3G" "IDH3G" 
[2,] "SSR4" "SSR4" 

Sollte dies nicht so sein wie das, was wir von c(gene,gene) bekommen? Kann jemand bitte klarstellen?

+0

haben Sie erwartet 'cbind (Matrix (Gen, nrow = 1), Matrix (Gen, nrow = 1))'? – baptiste

+0

@baptiste Ja das ist, was ich erwartet habe, als ob 'gen' mehrere Zeilen hätte. – MAPK

Antwort

2

Die c Funktion kombinieren die Vektoren und generieren ein Vektorzeichen.

class(c(gene,gene)) 
[1] "character" 

aber cbind (gene, gene) betrachten die gene als vertikale Vektor und kombinieren sie eine Matrix machen:

class(cbind (gene, gene)) 
[1] "matrix" 

Von R Hilfe ?cbind:

Kombinieren R Objekte von Zeilen oder Spalten

Beschreibung:

Take a sequence of vector, matrix or data-frame arguments and 
combine by _c_olumns or _r_ows, respectively. These are generic 
functions with methods for other R classes. 
+0

Danke, hab es! 'cbind' ordnet das Vektorelement immer serpentinenförmig über die Matrix an. – MAPK