Lesen Sie die CSV-Datei in R mit Währungsspalte als numerisch

8

Ich versuche, in eine csv-Datei zu lesen, die Informationen über politische Beiträge enthält. Soweit ich weiß, werden die Spalten standardmäßig als Faktoren importiert, aber ich muss die Spalte "Betrag" ('CTRIB_AMT' im Dataset) als numerische Spalte importieren, damit ich eine Vielzahl von Funktionen ausführen kann, die nicht funktionieren würden Faktoren. Die Spalte ist als Währung mit einem "$" als Präfix formatiert.

Ich habe einen einfachen Lesebefehl verwendet, um die Datei zu Beginn zu importieren:

%Vor%

Und dann versucht, das CTRIB_AMT von der Währung zu numerisch zu konvertieren:

%Vor%

Aber das hat nicht funktioniert. Die Funktionen, die ich für die Spalten CTRIB_AMT verwenden möchte, sind:

%Vor%

Siehe verwandte Frage hier .

Irgendwelche Gedanken darüber, wie man die Datei anfänglich importiert, also ist die Spalte numerisch oder wie wird sie nach dem Import konvertiert?

    
tchaymore 07.09.2011, 17:11
quelle

4 Antworten

14

Ich bin mir nicht sicher, wie ich es direkt einlesen kann, aber Sie können es ändern, sobald es in ist:

%Vor%

Ich denke, es könnte nur eine fehlende Flucht in Ihrem Sub sein. $ gibt das Ende einer Zeile in regulären Ausdrücken an. \ $ ist ein Dollarzeichen. Aber dann musst du der Flucht entkommen ...

    
Zach 07.09.2011, 17:48
quelle
7

Ein anderer Weg könnte die Konvertierung mit setAs sein.
Es wurde in zwei (ähnlichen) Fragen verwendet:

Für Ihre Bedürfnisse:

%Vor%     
Marek 08.09.2011 10:43
quelle
4

Noch eine andere Lösung für ein Problem, das vor langer Zeit gelöst wurde:

%Vor%     
Anton K 07.04.2013 19:30
quelle
2

Oder verwenden Sie etwas wie as.numeric(substr(as.character(contribs$CTRIB_AMT),2,20)) wir wissen, dass es nicht mehr als 20 Zeichen geben wird.

Eine weitere Sache, die Sie beachten sollten, ist, dass Sie die Notwendigkeit, von einem Faktor insgesamt zu konvertieren, entfernen müssen, wenn Sie stringsAsFactors=F in Ihrem Aufruf auf read.csv()

setzen     
Brandon Bertelsen 07.09.2011 17:28
quelle

Tags und Links