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

Interpolierten Wert einer CSV Tabelle auslesen

 

parnhold
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 15.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.04.2014, 21:35     Titel: Interpolierten Wert einer CSV Tabelle auslesen
  Antworten mit Zitat      
Hallo zusammen,
ich arbeite gerade an meiner Masterarbeit und habe erst angefangen mich mit Matlab intensiv zu beschaeftigen. Ich muss ein Programm schreiben und abgesehen von einem Problem funktioniert es. Allerdings schaff ich es trotz aller Tutorials und dem Nutzen der "help" funktion nicht, dass Problem zu loesen.

Ich muss eine Interpolation bei einer CSV Datei durchfuehren.

Einfaches Beispiel der Tabelle zur Erklaerung meiner Problematik:

1 2 3 4
1 a b c d
2 e f g h
3 i j k l
4 m n o p

Mein Problem bzw. die Sache, die das Programm ereldigen soll:

Ich habe den Wert von Kopfzeile und von der ersten Spalte. Allerdings handelt es sich hier um zuvor berechnete Werte, welche zwischen den gegeben liegen.

Beispiel: Wert der Kopfzeile = 3,2
Wert der ersten Spalte = 2,4

Nun muss ich aus der Datei den Feldwert auslesen lassen. Also in dem Fall einen Wert der zwischen g,h,k und l liegt.

Ich muss also interpolieren und das gleich in mehrfacher Ausfuehrung.

All meine Versuche ein Code dafuer zu schreiben misslangen auf eine grandiose Weise^^
Daher hoffe ich sehr, dass mir jmd von euch helfen kann und mir eventuell einen Code aufzeigen koennte, welcher dieses Problem loesen koennte.

Das gleiche Problem musste ich einmal loesen wo ich die Werte der Kopfzeile und die Feldwerte bekommen hatte. Zu ermitteln war der Wert der ersten Spalte. Das Problem lies sich mit dem Code;

Code:

data = csvread('Wn,Vn Data (Pn vs AR)/csv');
data_temp = data(2:size(data,1),2:size(data,2));
p_y_temps = data(2:size(data,1),1);
aspect_ratios_temp = data(1,2:size(data,2));  

find(p_y_temps==py);

aspect_ratio = b/a;

interp2(aspect_ratios_temp,p_y_temps,data_temp,aspect_ratio,py)

loesen. Die Kopfzeile ist in meinem Code die aspect_ratio. p_y_temps war der gesuchte Wert.

Fuer den oben beschriebenen Fall finde ich aber keine funktionierende Loesung und daher bin ich auf eure Hilfe/euren Rat angewiesen.

Vielen Dank fuer eure Hilfe
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.04.2014, 09:28     Titel:
  Antworten mit Zitat      
Hallo,

der nachfolgend genannte Code scheint mir gut geeignet, das beschriebene Problem zu lösen. Was passiert denn, wenn du diesen Code auf das oben beschriebene Problem anpasst?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
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.