English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

R-CSV-Datei

R als statistisches Fachwerkzeug, wenn nur manuell Daten importiert und exportiert werden können, würde es seine Funktion bedeutungslos machen, daher unterstützt R das Massenimportieren von Daten aus gängigen Tabellenformatdateien (z.B. CSV, Excel, XML usw.).

CSV-Tabelle Interaktion

CSV (Komma-Separierte Werte, CSV, wird manchmal auch als Zeichengetrennte Werte bezeichnet, da der Trennzeichen auch nicht ein Komma sein muss), ist ein sehr beliebtes Dateiformat zur Speicherung von Tabellen, das sich für Daten von mittlerer oder kleiner Größe eignet.

Da die meisten Softwareprogramme diesen Dateiformat unterstützen, wird es häufig zur Speicherung und Interaktion von Daten verwendet.

CSV ist im Wesentlichen ein Text, sein Dateiformat ist extrem einfach: Die Daten werden Zeile für Zeile als Text gespeichert, jede Zeile wird durch Trennzeichen in Felder aufgeteilt, und jede Zeile hat die gleiche Feldreihenfolge.

Nachfolgend ist eine einfache sites.csv-Datei (gespeichert im gleichen Verzeichnis wie das Testprogramm):

id,name,url,likes
1,Google,www.google.com,111
2,w3codebox,de.oldtoolbag.com,222
3,Taobao,www.taobao.com,333

CSV verwendet Kommas, um Spalten zu trennen, und wenn die Daten Kommas enthalten, müssen die gesamten Datenblöcke mit Anführungszeichen umgeben werden.

Hinweis:Texte, die nicht-englische Zeichen enthalten, müssen auf die Speicher Kodierung achten, da viele Computer allgemein UTF-8 Kodierung, daher verwende ich UTF-8 gespeichert.

Hinweis: Die letzte Zeile der CSV-Datei muss eine leere Zeile beinhalten, andernfalls wird eine Warnmeldung ausgegeben.

Warning message:
In read.table(file = file, header = header, sep = sep, quote = quote, :
  incomplete final line found by readTableHeader on 'sites.csv'

Lesen Sie eine CSV-Datei

Dann können wir die Funktion read.csv() verwenden, um die Daten aus einer CSV-Datei zu lesen:

data <- read.csv("sites.csv", encoding="UTF-8)
print(data)

Wenn die Eigenschaft encoding nicht eingestellt ist, liest die Funktion read.csv() standardmäßig mit der vom Betriebssystem vorgeschlagenen Textkodierung. Wenn Sie ein Windows-Chinesisch-System verwenden und die Systemschriftkodierung noch nicht eingestellt haben, sollte die Standardschriftkodierung GBK sein. Daher sollten Sie bitte so weit wie möglich eine einheitliche Textkodierung verwenden, um Fehler zu vermeiden.

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

  id name                 url likes
1  1 Google www.google.com   111
2  2 w3codebox de.oldtoolbag.com   222
3  3 Taobao www.taobao.com   333

Die Funktion read.csv() gibt ein Datenblatt zurück, und wir können die Daten leicht statistisch verarbeiten. Im folgenden Beispiel überprüfen wir die Zeilen- und Spaltenanzahl:

data <- read.csv("sites.csv", encoding="UTF-8)
print(is.data.frame(data))  # Überprüfen, ob es sich um ein Datenblatt handelt
print(ncol(data))  # Spaltenanzahl
print(nrow(data))  # Zeilenanzahl

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

[1] TRUE
[1] 4
[1] 3

Nachfolgend sind die Statistik-Felder, in denen das Feld likes am größten ist:

data <- read.csv("sites.csv", encoding="UTF-8)
# likes größte Daten
like <- max(data$likes)
print(like)

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

[1] 333

Wir können auch Suchkriterien angeben, ähnlich wie bei der SQL WHERE-Klausel, um Daten abzurufen, und müssen die Funktion verwenden subset()

Im folgenden Beispiel sucht man likes 222 bis zu den Daten:

data <- read.csv("sites.csv", encoding="UTF-8)
# likes ist 222 der Daten
retval <- subset(data, likes == 222)
print(retval)

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

  id name                 url likes
2  2 w3codebox de.oldtoolbag.com   222

Beachten Sie:Bedingungen werden mit == verwendet.

Um mehrere Bedingungen zu verwenden, trennt man mit dem &-Zeichen, im folgenden Beispiel sucht man likes größer 1 name w3codebox Daten:

data <- read.csv("sites.csv", encoding="UTF-8)
# likes  größer als 1 name w3codebox Daten
retval <- subset(data, likes > 1 & name=="w3codebox)
print(retval)

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

  id name                 url likes
2  2 w3codebox de.oldtoolbag.com   222

als CSV-Datei speichern

R-Sprache kann write.csv()  Funktion speichert Daten als CSV-Datei.

Fortsetzung des obigen Beispiels, wir speichern Daten mit likes 222 der Daten in w3codebox.csv Datei:

data <- read.csv("sites.csv", encoding="UTF-8)
# likes ist 222 der Daten
retval <- subset(data, likes == 222)
# Neue Datei schreiben
write.csv(retval,"w3codebox.csv")
newdata <- read.csv("w3codebox.csv")
print(newdata)

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

 X id name               url likes
1 2  2 w3codebox de.oldtoolbag.com   222

X aus dem Datensatz newper, kann durch das Parameter row.names = FALSE entfernt werden:

data <- read.csv("sites.csv", encoding="UTF-8)
# likes ist 222 der Daten
retval <- subset(data, likes == 222)
# Neue Datei schreiben
write.csv(retval,"w3codebox.csv", row.names = FALSE)
newdata <- read.csv("w3codebox.csv")
print(newdata)

Die Ausführung des folgenden Codes ergibt das folgende Ergebnis:

  id name                 url likes
1  2 w3codebox de.oldtoolbag.com   222

Nach Abschluss der Ausführung können wir w sehen3codebox.csv Datei wurde erfolgreich erstellt.