Ich versuche, Xlsread Functioin zu verwenden, um Kalkulationstabellen von 6000x2700 (XLSX-Datei) zu lesen.Matlab verlieren Antwort, wenn Verwendung xlsread eine große Kalkulationstabelle lesen
Ich habe zwei Fragen:
Erstens, wenn ich so etwas wie
[num,txt,~]=xlsread(input_file,input_sheet,'A1:CYY6596')
Matlab verwenden hält 'busy' und verlieren Reaktion zeigt (während ich es in Excel innerhalb von 30 Sekunden öffnen kann).
Gibt es eine Lösung, wenn ich Bereiche der xlsx-Datei nicht durchlaufen möchte? Mit anderen Worten, kann ich einfach eine Tabelle dieser Größe mit xlsread in Matlab ablegen?
Alternativ kann ich Loops verwenden, um diese Dateien Bereich für Bereich zu lesen, aber ich kann die letzte Spalte von jedem der Tabellen nicht identifizieren, es sei denn, ich lese zuerst die gesamte Datei. Daher, wenn ich die letzte Spalte nicht identifizieren kann, ist es schwierig, Schleifen zu machen und meine Interpretation in der Datei auszuführen.
Also meine zweite Frage ist: Gibt es eine Möglichkeit, die letzte Spalte der Tabelle zu identifizieren, ohne die gesamte Tabelle zu lesen?
Danke.
EDIT: Allerdings, wenn ich einen ähnlichen Code, der nur liest ersten 400 Spalten ('A1: RY6596') der Tabelle, solche Probleme nicht passieren.
Versuchen kann es sich um eine Low-Tech-Lösung, aber wenn xlsread nicht gut auf diese Datei funktioniert, können Sie Excel verwenden, um die XLSX-Datei als CSV zu speichern Datei und dann importieren Sie das mit Matlab. –
Danke für die Antwort. Ich habe versucht, mit der CSV-Datei, aber Matlab noch die Antwort verlieren (nach einer Weile, bleiben 0% CPU und eine unveränderte Speicher). –