2016-08-21 3 views
2

Bitte beachten Sie: Ich weiß nicht, wo ich mich irre, aber ich habe den ganzen Tag versucht, dieses Problem zu lösen. Daher bitte ich, es nicht als doppelte Frage zu verwerfen und dies als eine sehr spezifische Frage im Zusammenhang mit der Matrixstruktur zu behandeln.Erstellen einer Matrix einer bestimmten Struktur

Ich habe folgendes data.frame:

dput(c.m.q) 

structure(list(ASK_Price = c(1801, 1687.3, 1687.2, 1688.95, 1687.15, 
1688.95, 1687.5, 1688.85, 1689, 1688.95, 1687.5, 1688, 1688, 
1687.5, 1689.95, 1685.85, 1689.9, 1689.95, 1688.8, 1688.95, 1687.15, 
1687.2, 1690, 1688, 1688, 1690, 1688.7, 1690, 1688.7, 1689.9, 
1688.7, 1689.9, 1688.7, 1689.9, 1689.8, 1687.95, 1689.75, 1689.7, 
1687.95, 1689.35, 1689.3), BID_Price = c(1651, 1688.5, 1687, 
1688.5, 1687, 1688.5, 1687.05, 1688.5, 1687.05, 1687.05, 1688.5, 
1688.5, 1688.5, 1688.5, 1688.7, 1685.35, 1688.2, 1688.95, 1685.6, 
1685.6, 1689.05, 1685.8, 1689.1, 1686.1, 1686.25, 1689.95, 1688.05, 
1689.95, 1688.1, 1689.8, 1688.1, 1689.8, 1686.1, 1689.8, 1689.7, 
1686.15, 1689.7, 1689.15, 1686.15, 1689.15, 1689.15)), .Names = c("ASK_Price", 
"BID_Price"), row.names = c(1L, 17704L, 17707L, 17708L, 17709L, 
17710L, 17713L, 17714L, 17717L, 17720L, 17729L, 17732L, 17735L, 
17738L, 17983L, 17984L, 17985L, 17986L, 18015L, 18018L, 18029L, 
18032L, 18033L, 18223L, 18225L, 18226L, 18227L, 18228L, 18229L, 
18230L, 18231L, 18232L, 18233L, 18234L, 18235L, 18236L, 18237L, 
18238L, 18239L, 18240L, 18241L), class = "data.frame") 

Ich will es in der Struktur ähnlich der aussehen:

dput(mydata) 

structure(c(4.56, 4.57, 4.53, 4.59, 4.55, 4.59, 4.59, 4.55, 4.55, 
4.55, 4.59, 4.55, 4.59, 4.59, 4.7, 4.64, 4.65, 4.66, 4.65, 4.66, 
4.66, 4.65, 4.65, 4.65, 4.66, 4.65, 4.66, 4.66), .Dim = c(14L, 2L)) 

Ich habe versucht, die folgenden:

c.m.q<-as.matrix(sapply(c.m.q, as.numeric)) 

Aber ich bekomme keine ähnliche Matrixstruktur:

structure(c(1801, 1687.3, 1687.2, 1688.95, 1687.15, 1688.95, 
1687.5, 1688.85, 1689, 1688.95, 1687.5, 1688, 1688, 1687.5, 1689.95, 
1685.85, 1689.9, 1689.95, 1688.8, 1688.95, 1687.15, 1687.2, 1690, 
1688, 1688, 1690, 1688.7, 1690, 1688.7, 1689.9, 1688.7, 1689.9, 
1688.7, 1689.9, 1689.8, 1687.95, 1689.75, 1689.7, 1687.95, 1689.35, 
1689.3, 1651, 1688.5, 1687, 1688.5, 1687, 1688.5, 1687.05, 1688.5, 
1687.05, 1687.05, 1688.5, 1688.5, 1688.5, 1688.5, 1688.7, 1685.35, 
1688.2, 1688.95, 1685.6, 1685.6, 1689.05, 1685.8, 1689.1, 1686.1, 
1686.25, 1689.95, 1688.05, 1689.95, 1688.1, 1689.8, 1688.1, 1689.8, 
1686.1, 1689.8, 1689.7, 1686.15, 1689.7, 1689.15, 1686.15, 1689.15, 
1689.15), .Dim = c(41L, 2L), .Dimnames = list(NULL, c("ASK_Price", "BID_Price"))) 

Antwort

2

Wir haben die dimnames auf NULL gesetzt kann nach dem matrix Umwandlung (von der erwarteten Ausgabe unter der Annahme, zeigte in der Zeit nach der OP ohne dimnames)

m1 <- `dimnames<-`(as.matrix(c.m.q), NULL) 

Wenn wir die dput von ‚m1‘ überprüfen, ist es von ähnlicher Struktur

dput(m1) 

structure(c(1801, 1687.3, 1687.2, 1688.95, 1687.15, 1688.95, 
1687.5, 1688.85, 1689, 1688.95, 1687.5, 1688, 1688, 1687.5, 1689.95, 
1685.85, 1689.9, 1689.95, 1688.8, 1688.95, 1687.15, 1687.2, 1690, 
1688, 1688, 1690, 1688.7, 1690, 1688.7, 1689.9, 1688.7, 1689.9, 
1688.7, 1689.9, 1689.8, 1687.95, 1689.75, 1689.7, 1687.95, 1689.35, 
1689.3, 1651, 1688.5, 1687, 1688.5, 1687, 1688.5, 1687.05, 1688.5, 
1687.05, 1687.05, 1688.5, 1688.5, 1688.5, 1688.5, 1688.7, 1685.35, 
1688.2, 1688.95, 1685.6, 1685.6, 1689.05, 1685.8, 1689.1, 1686.1, 
1686.25, 1689.95, 1688.05, 1689.95, 1688.1, 1689.8, 1688.1, 1689.8, 
1686.1, 1689.8, 1689.7, 1686.15, 1689.7, 1689.15, 1686.15, 1689.15, 
1689.15), .Dim = c(41L, 2L)) 
+1

@PolarBear Wo ist 'n_trades' in der geposteten Ausgabe, da ich nicht den Kontext in dem Fehler erhalte, den Sie erwähnten? – akrun

+0

@PolarBear, du musst deine wahre Frage stellen, keine Frage über etwas anderes, von dem du denkst, dass es dein wirkliches Problem für dich lösen wird. – gung

Verwandte Themen