Überprüfung dieses Beispiel hat:write.table schreibt unerwünschte führende leere Spalte auf Header, wenn rownames
> a = matrix(1:9, nrow = 3, ncol = 3, dimnames = list(LETTERS[1:3], LETTERS[1:3]))
> a
A B C
A 1 4 7
B 2 5 8
C 3 6 9
die Tabelle richtig angezeigt wird. Es gibt zwei verschiedene Arten des Schreibens es in Datei ...
write.csv(a, 'a.csv')
, die wie erwartet gibt:
"","A","B","C"
"A",1,4,7
"B",2,5,8
"C",3,6,9
und write.table(a, 'a.txt')
die Schrauben bis
"A" "B" "C"
"A" 1 4 7
"B" 2 5 8
"C" 3 6 9
in der Tat, ein leerer Tab fehlt. ... was für Downstream-Dinger schmerzhaft ist. Ist das ein Fehler oder eine Funktion? Gibt es eine Problemumgehung? (Ausgenommen write.table(cbind(rownames(a), a), 'a.txt', row.names=FALSE
)
Cheers, yannick
@Marek, wäre es möglich, einen Namen zu der Spalte rownames hinzuzufügen? I.e., anstatt "", fügen Sie "ID" oder etwas Ähnliches hinzu? – Dnaiel
@Dnaiel Von dem, was ich weiß, können Sie nicht. Sie können Zeilennamen mit Daten verknüpfen und ihnen Namen geben (wie in Frage). – Marek
@rusalkaguy Ihre Bearbeitung hat keinen Sinn. Diese "Erweiterung" ist in der ursprünglichen Frage ("Workaround anders als") – Marek