So ändern Sie das Wertformat für eine bestimmte Spalte – R


Foeke Boersma

Angenommen, ich habe einen Datensatz trafficmit einer Spalte Traffic_count, die die Verkehrszählung für jede Verkehrszählstation anzeigt:

Traffic_counting_station_ID Traffic_count
1 24.592
2 65.500
3 4.976

Das Problem ist, dass Traffic_countes als Float-Typ interpretiert wird, während die Werte ganze Zahlen darstellen sollten. Wenn ich beispielsweise eine neue Spalte generiere, Traffic_count_TimesTendie als formuliert ist traffic$Traffic_count*10, lautet die resultierende Tabelle:

Traffic_counting_station_ID Traffic_count Traffic_count_TimesTen
1 24.592 245.92
2 65.500 655,00
3 4.976 49.76

Wenn ich mich anwende, traffic$Traffic_count <- as.integer(traffic$Traffic_count)sind die Werte für Traffic_countnur 25, 66 bzw. 5.

Die Anwendung traffic$Traffic_count <- as.numeric(gsub(".","",traffic$Traffic_count))zum Entfernen des Punktes, der den Typ Float definiert, führt zu NA.

Wie kann ich die Werte von Traffic_count in Ganzzahlen umwandeln, sodass die Werte in Traffic_countals 24592, 65500, 4976 und die Werte in Traffic_count_TimesTenals 245920, 655000 und 49760 angesehen werden?

Sandwichnick

Ihre gsubLösung ist fast richtig. Versuchen Sie Folgendes:

traffic$Traffic_count <- as.numeric(gsub("\\.","",traffic$Traffic_count))

Erläuterung

.ist ein Sonderzeichen in Regex und bedeutet "beliebiges" Zeichen, daher wird es jeden Buchstaben durch ersetzen "". Wenn Sie einen Punkt ausdrücklich ersetzen möchten, müssen Sie ihm ein voranstellen \. Da R jedoch versucht, ein einzelnes "" innerhalb einer Zeichenfolge zu interpretieren, müssen wir R selbst anweisen, den Schrägstrich nicht mit einem anderen Schrägstrich vorzuverarbeiten. deshalb\\

Verwandte Artikel


So ändern Sie die Gitterlinienbreite für eine bestimmte Linie

Billy Ich benötige Hilfe beim Ändern der Linienbreite (oder -farbe) einer bestimmten Gitterlinie in einem Chartjs-Diagramm. Im folgenden Beispiel möchte ich die Gitterlinienbreite (oder die Farbe ändern) der horizontalen Gitterlinie nur auf der y-Achse 60 erhö

Ändern Sie das Datumsformat für eine Spalte in Python

Seesch Ich möchte das Datumsformat einer ganzen Spalte im Datenrahmen ändern. Mein Code sieht so aus: fwds['fwdlookupterm'] = fwds['symbol'] + datetime.datetime.strptime(fwds['expiration_date'],'%y%m%d') Wenn ich dies tue, erhalte ich eine Fehlermeldung: Type

So ändern Sie bestimmte Werte in einer Spalte in R.

Roy: Ich habe einen Datenrahmen, der so aussieht: df <- data.frame(A=c(3,2,1,4,5,3,4,2),B=c(1,2,3,3,4,1,4,2),C=c(2,1,4,5,2,1,3,2), D=c(4,1,2,4,3,4,2,5)) row.names(df)<-c("R1","R2","R3","R4","R5","R6","R7","R8") A B C D R1 3 1 2 4 R2 2 2

So ändern Sie das Formularaktionsattribut für eine Suchleiste

Honig Dachs Ich bin sehr neu in Javascript und der Webentwicklung im Allgemeinen, daher ist jede Hilfe willkommen! Ich habe ein Formular, das eine einfache Suchleiste einrichtet. Ich möchte, dass das Formular eine URL enthält, die davon abhängt, was der Benutz

So ändern Sie das Zeitlimit für eine Anfrage in okhttp

Ashok Varma Im Allgemeinen legen wir ein Zeitlimit für den okHttp-Client fest und verwenden eine einzelne Instanz dieses Clients. Daher können wir das Zeitlimit für diesen Client nach seiner Generierung nicht mehr ändern. Wie ändere ich das Timeout für eine be

So erhalten Sie eine bestimmte Spalte aus einer Matrix in r?

Grec001 Ich habe eine Matrix wie folgt, wie kann ich die gewünschte Spalte mit [?extrahieren MX <- matrix(101:112,ncol=3) MX[,2] # [1] 105 106 107 108 `[`(MX, c(1:4,2)) # [1] 101 102 103 104 102 Offensichtlich extrahiert es die 2. Spalte nicht als intuitive V