Kann mir bitte jemand helfen, wie ich eine Excel 2007 (.xlsx) -Datei am besten in R importieren kann? Ich habe verschiedene Methoden ausprobiert und keine scheint zu funktionieren. Ich habe ein Upgrade auf 2.13.1, Windows XP, XLSX 0.3.0 durchgeführt. Ich weiß nicht, warum der Fehler immer wieder auftritt. Ich habe es versucht:
AB<-read.xlsx("C:/AB_DNA_Tag_Numbers.xlsx","DNA_Tag_Numbers")
ODER
AB<-read.xlsx("C:/AB_DNA_Tag_Numbers.xlsx",1)
aber ich bekomme den Fehler:
Error in .jnew("java/io/FileInputStream", file) :
java.io.FileNotFoundException: C:\AB_DNA_Tag_Numbers.xlsx (The system cannot find the file specified)
Danke dir.
.csv
.file.exists("C:/AB_DNA_Tag_Numbers.xlsx")
.Antworten:
Für eine Lösung, die frei von fummeligen externen Abhängigkeiten * ist, gibt es jetzt
readxl
:Es kann wie folgt installiert werden:
oder
Verwendung
* Nicht unbedingt wahr, es erfordert das
Rcpp
Paket , für das wiederum Rtools (für Windows) oder Xcode (für OSX) erforderlich sind, die Abhängigkeiten außerhalb von R sind. Sie müssen jedoch nicht mit Pfaden usw. herumspielen Vorteil gegenüber Java- und Perl-Abhängigkeiten.Update Es gibt jetzt das Rexcel- Paket. Dies verspricht, Excel-Formatierungen, -Funktionen und viele andere Arten von Informationen aus der Excel-Datei in R zu erhalten.
quelle
Möglicherweise möchten Sie auch das XLConnect-Paket ausprobieren. Ich hatte besseres Glück damit als xlsx (und es kann auch XLS-Dateien lesen).
Wenn Sie Probleme damit haben, dass Ihre Datei nicht gefunden wird, wählen Sie sie mit file.choose () aus.
quelle
readWorksheet(loadWorkbook(...))
Sie das Gleiche etwas prägnanter tun könnenreadWorksheetFromFile(...)
.Ich würde auf jeden Fall die
read.xls
Funktion imgdata
Paket ausprobieren , die wesentlich ausgereifter ist als dasxlsx
Paket. Möglicherweise ist Perl erforderlich ...quelle
Aktualisieren
Da die Antwort unten jetzt etwas veraltet ist, möchte ich nur auf das readxl- Paket aufmerksam machen. Wenn die Excel- Tabelle gut formatiert ist, würde ich jetzt readxl verwenden , um aus der Arbeitsmappe zu lesen. Wenn die Blätter schlecht formatiert sind, würde ich immer noch nach CSV exportieren und dann die Probleme in R entweder über
read.csv()
oder einfach alt behandelnreadLines()
.Original
Meine bevorzugte Methode ist das Speichern einzelner Excel-Tabellen in CSV-Dateien (Comma Separated Value). Unter Windows sind diese Dateien mit Excel verknüpft, sodass Sie die Doppelklick-Funktion zum Öffnen in Excel nicht verlieren.
CSV-Dateien können mit
read.csv()
oder in R eingelesen werden , wenn Sie sich an einem Ort befinden oder einen Computer verwenden, der mit einigen europäischen Einstellungen eingerichtet ist (wobei,
Dezimalstelle verwendet wird)read.csv2()
.Diese Funktionen haben sinnvolle Standardeinstellungen, die das Lesen entsprechend formatierter Dateien vereinfachen. Bewahren Sie einfach Beschriftungen für Stichproben oder Variablen in der ersten Zeile oder Spalte auf.
Der zusätzliche Vorteil des Speicherns von Dateien in CSV besteht darin, dass die Dateien als einfacher Text sehr einfach weitergegeben werden können und Sie sicher sein können, dass sie überall geöffnet werden können. man braucht kein Excel, um die Daten anzusehen oder zu bearbeiten.
quelle
read.xlsx()
und über die neuesten Versionen dieses Pakets und R verfügen, senden Sie eine E-Mail an den Paketbetreuer, um einen potenziellen Fehler zu melden.Beispiel 2012:
Beispiel 2015:
readxl
und habe gute Erfahrungen damit gemacht.quelle
Dieses neue Paket sieht gut aus http://cran.r-project.org/web/packages/openxlsx/openxlsx.pdf Es benötigt kein rJava und verwendet 'Rcpp' für die Geschwindigkeit.
quelle
Wenn Sie auf dasselbe Problem stoßen und R Ihnen einen Fehler gibt - Funktion ".jnew" konnte nicht gefunden werden - Installieren Sie einfach die Bibliothek rJava. Oder wenn Sie es bereits haben, führen Sie einfach die Zeilenbibliothek (rJava) aus. Das sollte das Problem sein.
Außerdem sollte allen klar sein, dass es einfacher ist, mit CSV- und TXT-Dateien zu arbeiten, aber das Leben ist nicht einfach und manchmal muss man nur eine XLSX öffnen.
quelle
gdata
mir die Startmeldung erhaltengdata: read.xls support for 'XLSX' (Excel 2007+) files ENABLED.
klingt für mich wie es Dateien öffnen xlsx sollte, obwohl zugegebenermaßen habe ich es nicht vor kurzem getestet ...gdata
Version 2.8.2xlsx
Dateien mit derread.xls
Funktion liest .Ich habe kürzlich die Funktion von Schaun Wheeler zum Importieren von Excel-Dateien in R entdeckt, nachdem ich festgestellt hatte, dass das xlxs-Paket für R 3.1.0 nicht aktualisiert wurde.
https://gist.github.com/schaunwheeler/5825002
Der Dateiname muss die Erweiterung ".xlsx" haben und die Datei kann nicht geöffnet werden, wenn Sie die Funktion ausführen.
Diese Funktion ist sehr nützlich für den Zugriff auf die Arbeit anderer Personen. Die Hauptvorteile gegenüber der Funktion read.csv liegen darin, wann
Die Verwendung der Funktion read.csv erfordert das manuelle Öffnen und Speichern jedes Excel-Dokuments, was zeitaufwändig und sehr langweilig ist. Die Verwendung der Schaun-Funktion zur Automatisierung des Workflows ist daher eine große Hilfe.
Große Requisiten an Schaun für diese Lösung.
quelle
Für mich hat das openxlx-Paket am einfachsten funktioniert.
quelle
Was ist Ihr Betriebssystem? Welche Version von R verwenden Sie: 32-Bit oder 64-Bit? Welche Java-Version haben Sie installiert?
Ich hatte einen ähnlichen Fehler, als ich die
read.xlsx()
Funktion zum ersten Mal verwendete und feststellte, dass mein Problem (das möglicherweise mit Ihrem Problem zusammenhängt oder nicht; zumindest sollte diese Antwort als "Versuchen Sie es auch" angesehen werden) mit der Inkompatibilität zusammenhängt von .xlsx pacakge mit 64-Bit Java. Ich bin mir ziemlich sicher, dass das XLSX-Paket 32-Bit-Java erfordert.Verwenden Sie 32-Bit-R und stellen Sie sicher, dass 32-Bit-Java installiert ist. Dies kann Ihr Problem beheben.
quelle
Der obige Kommentar hätte Ihr Problem lösen sollen:
sollte danach gut funktionieren.
quelle
Möglicherweise können Sie mehrere Registerkarten und weitere Formatierungsinformationen beibehalten, wenn Sie in eine OpenDocument Spreadsheet-Datei ( ods ) oder ein älteres Excel-Format exportieren und diese mit dem oben genannten ODS-Reader oder Excel-Reader importieren .
quelle
Wie von vielen hier gesagt, schreibe ich das Gleiche, aber mit einem zusätzlichen Punkt!
Zuerst müssen wir sicherstellen, dass in unserem R Studio diese beiden Pakete installiert sind:
Um ein Paket in R zu laden, können Sie die folgende Funktion verwenden:
Die Suche zeigt die Liste der aktuellen Pakete an, die in Ihrem R Studio verfügbar sind.
Jetzt noch ein Haken, obwohl Sie vielleicht diese beiden Pakete haben, aber dennoch Probleme beim Lesen der "xlsx" -Datei auftreten und der Fehler wie folgt aussehen könnte: "Fehler: mehr Spalten als Spaltenname"
Um dieses Problem zu lösen, können Sie einfach Ihr Excel-Blatt "xlsx" in speichern
und dein Leben wird super einfach sein ....
Habe Spaß!!
quelle
Ich habe mich sehr um alle obigen Antworten bemüht. Sie haben jedoch nicht wirklich geholfen, da ich einen Mac verwendet habe. Die Rio-Bibliothek verfügt über diese Importfunktion, mit der grundsätzlich alle Arten von Datendateien in Rstudio importiert werden können , auch solche, die andere Sprachen als Englisch verwenden!
Versuchen Sie die folgenden Codes:
Ich hoffe das hilft. Weitere Informationen finden Sie unter: https://cran.r-project.org/web/packages/rio/vignettes/rio.html
quelle