2017-04-20 3 views
0

I numerische Präfixe rownames in R.Erstellen (numerischen) Präfix rownames in R

Was ich habe, ist folgendes zu schaffen versuchen:

siehe png

enter image description here

..und was ich brauchen würde, ist das folgende:

http://www.wordfish.org/uploads/1/2/9/8/12985397/wcger_alldim_chop.csv

Das Format ist eine Term-Dokument-Matrix oder einfach nur eine R-Matrix.

Ich würde das Format benötigen, um das Programm "Wordfish" (Text Mining) zu verwenden.

Format sollte genau so aussehen. Ich war in der Lage, die Matrix zu erstellen, wie in der Verbindung unten zu sehen ist, aber füge nicht die numerischen Zählungen vor jedem Wort hinzu und weise auch Zitate um die Zahl und das Wort selbst zu.

Leider

write.table (wcdata, file = "test.csv", row.names = TRUE, col.names = NA, qmethod = c ("double"))

und

write.csv (wcdata, quote = TRUE, row.names = TRUE "test.csv")

nur Platz Anführungszeichen um die Spalten (was natürlich gut ist)

Vielen Dank im Voraus für jede Hilfe

+0

Hallo und willkommen zu StackOverflow. Bitte nehmen Sie sich etwas Zeit, um die Hilfeseite zu lesen, insbesondere die Abschnitte mit dem Namen ["Welche Themen kann ich hier fragen?"] (Http://stackoverflow.com/help/on-topic) und ["Welche Arten von Fragen sollte ich haben nicht fragen? "] (http://stackoverflow.com/help/dont-ask). Und, was noch wichtiger ist, bitte lesen Sie die Stack Overflow [Frage-Checkliste] (http://meta.stackexchange.com/q/156810/204922). Vielleicht möchten Sie auch etwas über [Minimale, vollständige und überprüfbare Beispiele] (http://stackoverflow.com/help/mcve) erfahren. –

Antwort

0

Ich hoffe, ich habe Ihr Problem, aber ich bin mir nicht ganz sicher.

r1 <- c("alt", 1,2,3,4,5,6,7) 
r2 <- c("neu", 2,3,4,5,6,7,8) 
r3 <- c("zu", 1,1,1,1,1,1,1) 
r4 <- c("hier", 1,2,1,2,1,2,1) 
r5 <- c("das", 4,3,4,3,4,3,4) 
r6 <- c("die", 7,7,7,7,7,7,7) 
r7 <- c("der", 2,5,4,4,5,7,6) 

tdm <- rbind(r1,r2,r3,r4,r5,r6,r7) 

tdm2 <- cbind(c(1:nrow(tdm)),tdm) 
tdm2[,1] <- sapply(tdm2[,1], function(x) paste('\"', x,'\"',sep = "")) 
tdm2[,2] <- sapply(tdm2[,2], function(x) paste('\"', x,'\"',sep = "")) 

Ich denke, die letzten drei Zeilen für Sie interessant sind. Die anderen sind nur für mein Beispiel, weil Sie keine Daten zur Verfügung gestellt haben.

0

Vielen Dank für die schnelle Antwort.

Die Lösung geht in die richtige Richtung, ist aber nicht genau das, was ich brauche.

hier sehen:

TDM_1

Was ich bekommen, wenn die Ausführung der beiden Codezeilen bieten Ihnen

wcdata_2 <- cbind(c(1:nrow(wcdata)),wcdata) 
wcdata_2[,1] <- sapply(wcdata_2[,1], function(x) paste('\"', x,'\"',sep = "")) 

das ist

Die Daten mit einem Screenshot versehen wurde folgende

TDM 2

was in die richtige Richtung geht, aber was ich brauche, ist ein Präfix (Nummer) vor jeder Zeile und ziehe dann sowohl das Präfix als auch die Zeileninformation selbst, wie in dem obigen Link zu sehen ist.

So:

r1 <- c("1" "alt", 1,2,3,4,5,6,7) 
r2 <- c("2" "neu", 2,3,4,5,6,7,8) 
r3 <- c("3" "zu", 1,1,1,1,1,1,1) 
r4 <- c("4" "hier", 1,2,1,2,1,2,1) 
r5 <- c("5" "das", 4,3,4,3,4,3,4) 
r6 <- c("6" "die", 7,7,7,7,7,7,7) 
r7 <- c("7" "der", 2,5,4,4,5,7,6) 

So eine Zeile ist ein Wortanzahl und das jeweilige Wort pro Dokument und die Dokumente sind die Spalten. Die Wörter werden vom tdm bereitgestellt, aber die Zählungen und die Anführungszeichen um das Präfix herum und die Wörter nicht.

Ich hoffe, das macht es klarer.

Verwandte Themen