WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matrix aus Excel-Datei erstellen

 

Annka84
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 30.12.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.12.2012, 14:33     Titel: Matrix aus Excel-Datei erstellen
  Antworten mit Zitat      
Hallo,
ich sitze gerade an einem uralten Skript für die Auswertung von FT-IR Werten und muss dieses auf einen aktuellen Stand bringen. Leider arbeite ich erst seit ein paar Wochen mit Matlab und versuche es mir dementsprechend selbst beizubringen.
Mein Problem ist nun, dass ich eine xls-Datei habe und die einzelnen Spalten (4 insgesamt) in jeweils einer Matrix in Matlab darstellen muss. Anschließend muss ich es kontrollieren und dann plotten.

Die bisherigen Kommandos dazu waren:
»load utidata.txt

3. create a names matrix using the column in XL
» names=[xl];
(xl here is shorthand to say copy the columns from XL and paste into Matlab, remember the array/matrix needs to be in square brackets.)

4. create a class matrix using the column in XL
» class=[xl];
(This is used to specify to Matlab which samples are replicates.
Note, it is more normal to have these in the order;
1, 2, 3 …, n, 1, 2, 3 …, n, 1, 2, 3 …, n.)

5. Another way of creating the class matrix is to use the groups function
» class=groups(59,4,2);
(Syntax is shown by typing » help groups
[group] = groups(samps,reps,A)
returns a group files for dfa in order
A=1 ABC repeat (i.e., A,B,C, ...., A,B,C etc)
A=2 AAA repeat (i.e., A,A,A, ...., Z,Z,Z)
samps = number of groups
reps = number of replicates)

6. check that all matrices are in memory
» whos
(This should return to the command window:
Name Size Bytes Class
Class 236x1 1888 double array
Names 236x1 472 char array
utidata 236x882 1665216 double array
Grand total is 208624 elements using 1667576 bytes)

und anschließend

» plotftir(utidata)

habt ihr eine Idee wie man das einfach und verständlich lösen kann? Mit den oben beschriebenen Kommandos läuft es nämlich nicht (deshalb muss die Version auch überarbeitet werden).

Danke schon mal!

Lieben Gruß,
Annka.
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 30.12.2012, 17:40     Titel: Re: Matrix aus Excel-Datei erstellen
  Antworten mit Zitat      
Hallo Annka,

Zitat:
Mit den oben beschriebenen Kommandos läuft es nämlich nicht

Dazu benötigen wir mehr Details:
1. Welches sind genau die "beschriebenen Kommandos"? Am besten poste die relvanten Abschnitte des Programms.
2. Was läuft nicht wie erwartet? Bekommst Du eine Fehlermeldung, wenn ja welche, oder weicht das Ergebnis von Deinen erwartungen ab, wenn ja, wie?

Eine Antwort sollte keinerlei Erraten von Details des Problems erfordern, denn dann könnte sie wegen der möglichen Verwirrung schädlicher sein als keine Antwort zu geben.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Annka84
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 30.12.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.12.2012, 07:46     Titel:
  Antworten mit Zitat      
Also die Kommandos, die ich habe, habe ich bereits gepostet (3. - 6.). Das Einlesen der Excel-Datei mit xlsread hat auch geklappt. Nun wollte ich (wie vorgegeben) die Matritzen aus den einzelnen Spalten erstellen und anschließend damit eine Graphik erzeugen.

Im Skript steht, dass ich die Matritzen anlege, indem ich
Code:
names=[xl];
class=[xl];
class=groeps(59,4,2)

eingebe und Matlab sich die Spalten dazu aus der Excel-Datei sucht.

Das klappt jedoch nicht und ich weiß nicht, wie ich es anders machen kann.
Die Excel-Datei schicke ich auch mal mit, damit ihr euch ein Bild davon machen könnt.

Lieben Gruß!

utiexp.xls
 Beschreibung:

Download
 Dateiname:  utiexp.xls
 Dateigröße:  32 KB
 Heruntergeladen:  380 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
mCherry

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.03.2013, 12:36     Titel: Hast das Problem dieses matlab tutorials gelöst?
  Antworten mit Zitat      
Hi!
Ich glaube, ich arbeite mit dem gleichen tutorial, diesem hier:
http://www.biospec.net/learning/matlab/matlab%20tutorial.pdf

und ich stehe ebenfalls for dem gleichen Problem.
Wenn ich versuche die Matrix mit den Daten aus der Excel-Datei zu erstellen passiert folgendes:

>> names=[xl]; %erstellt Matrizen aus den Spalten mit Daten aus der Excel-Datei
??? Undefined function or variable 'xl'.

Da hier ja schon länger nix mehr geschrieben wurde, würde mich interessieren, ob du das Problem in der Zwischenzeit lösen konntest.

Viele Grüße
mCherry
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 12.03.2013, 17:23     Titel: Re: Hast das Problem dieses matlab tutorials gelöst?
  Antworten mit Zitat      
Hallo mCherry,

Betrifft [urlhttp://www.biospec.net/learning/matlab/matlab%20tutorial.pdf
[/url]

Das Beispiel aus diesem Dokument ist ungeschickt. Beim Laden eines Files mit LOAD werden die Variablen direkt in den Workspace geschrieben, was eine ernste und häufige Quelle von Fehlern ist.
Wenn man "Data=load(FileName)" verwendet, kann man viel besser kontrollieren, was in dem File enthalten ist.

Weiterhin muss man einen namen natürlich nicht in eckige Klammern schreiben, wenn er eine Matrix enthält. Die eckigen Klammern sind eine Abkürzung für den CAT Befehl, aber bei einer einzigen variablen gibt es nichts zu verbinden.
Siehe auch "[filledwells(1:50,:)]./[blank(1:50,:)]" weiter unten.

"class" als Namen zu verwenden ist eine schlechte idee, weil dann der Befehl "class" nicht mehr erreichbar ist.

Von der Verwendung von "i" als counter einer Schleife wird in der matlab Documentation ausdrücklich abgeraten, weil die zu Verwechselungen mit der imaginären Einheit führen kann.

Dieses Manual hat meiner Ansicht nach noch ein großes Potential für Verbesserungen und gerade ein Tutorial für Anfänger sollte nur von erfahrenen Profis verfasst werden.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
mCherry

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.03.2013, 13:07     Titel:
  Antworten mit Zitat      
Hallo Jan!

Also, dass das Tutorial nicht besonders toll ist, scheint mir auch so.

Vielleicht war mein post etwas missverständlich.
Ich bin solch ein blutiger "Matlab-Anfänger" und unser Prof möchte das wir für die Uni dieses Tutorial machen.
Was kann ich also tun?
Dem Prof sagen, dass das Tutorial schei... ist und die Daten anders auswerten, wie auch immer?

Oder hat irgendjemand da draußen ne Idee wie man mit diesem Tutorial noch weiter arbeiten kann?!

Gruß mCherry
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.