2017-09-12 2 views
0

ich eine identische Frage tatsächlich zu Thema haben:Halten Sie Wörter in einem XTS-Objekt in R

Keeping Character Types/Names in xts object in R

jedoch die Frage scheint nicht gelöst worden zu sein, und ob das ursprüngliche Plakat konnte das Problem lösen ist unbekannt, so dass ich dachte, ich sollte es noch einmal fragen und hoffentlich eine Antwort erhalten.

Ich arbeite mit einer Datentabelle und ich möchte diese Datentabelle in ein XTS-Objekt konvertieren. In meinem Code verwende ich die Funktion as.xts(), um ein Datentabellenobjekt in ein xts-Objekt zu konvertieren, und wenn dies geschieht, löscht das xts-Paket alle nicht-numerischen Spalten und wandelt die Datentabelle in ein xts-Objekt/Matrix um.

Jetzt gibt es eine Spalte im Datentabellenobjekt, die mit Namen gefüllt ist, und ich möchte verhindern, dass Xts diese Spalte löscht, wenn ich die Datentabelle in ein xts-Objekt konvertiere. Ist das möglich?

+0

In diesem Post wollte das OP nur die Information behalten. Er hatte nicht vor, die Namen zu verwenden. Wenn Sie die Namen beibehalten möchten, können Sie sie in den Attributen des xts-Objekts angeben. 'xts_obj <-xts (x = irgendein_mat, order_by = ZEIT, attr_name = dt $ name)'. Du kannst die Chat-Diskussion zu diesem Thread durchgehen und sehen, ob sie deinem Zweck dient. – TUSHAr

+0

Ich möchte auch nicht die Namen im xts-Objekt verwenden, ich will sie nur dort, damit es einfacher ist, den Überblick zu behalten. Wenn Sie jedoch die Funktion 'as.xts()' verwenden, werden automatisch alle Spalten mit nicht-numerischen Datentypen gelöscht, sodass ich nach einer Möglichkeit suche, sie beizubehalten. Ich sollte beachten, dass ich die 'as.xts()' Funktion verwenden möchte, da sie Objekte im Vergleich zur 'xts()' Funktion viel schneller konvertiert, und da ich mit extrem großen Objekten arbeite, brauche ich grundsätzlich alle die Geschwindigkeit, die ich bekommen kann – NotsurewhatImdoing

+0

Ja, aber obwohl 'xts()' funktionieren könnte, scheint es viel, viel langsamer zu sein. Ich habe es über einen kleineren Datensatz als den, den ich gerade benutze, ausgeführt und es hat viel länger gedauert, die Konvertierung im Vergleich zu 'as.xts()' durchzuführen, ich werde weiter damit herumspielen und hoffen Ich kann die Zeit runterschlagen obwohl – NotsurewhatImdoing

Antwort

1

Ich hasse es zu sagen, aber die Antwort ist nein. Ein xts Objekt ist im Wesentlichen eine Matrix, die nach Daten indiziert wurde. Der nächste Punkt, den Sie zu Wörtern haben werden, sind die Spaltennamen.

+0

Ich sehe, danke dafür! Würde ich also richtigerweise davon ausgehen, dass die einzige Art, wie ich "Zeichen" -Spalten wieder in die Tabelle einfügen kann, ist, ob ich das xts-Objekt wieder in ein Datentabellenobjekt umwandle? – NotsurewhatImdoing

+0

In meiner eigenen Erfahrung, ja. Ich werde die Zahlen in 'xts' Objekte umwandeln, um die Berechnungen durchzuführen, die ich dort brauche. Ich kann nicht wirklich ausführlich etwas sagen, ohne genau zu wissen, was du tust. Ändern sich deine Namen im Laufe der Zeit? – lebelinoz

+0

Ich habe ein ähnliches Problem wie Sie, wo ich Aktien nach Ticker und Name habe, und ich muss die Preise im Laufe der Zeit verfolgen. Ich erstelle normalerweise 'xts'-Objekte, deren Spaltenüberschriften Ticker sind, und füge dann die Ergebnisse meiner' xts'-Berechnungen wieder mit dem Hauptdatenrahmen zusammen, der sowohl Namen als auch Ticker enthält. – lebelinoz

Verwandte Themen