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

Nur bestimmte Spalten für Funktion nutzen - Wie?

 

Jana
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 26.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.03.2011, 16:30     Titel: Nur bestimmte Spalten für Funktion nutzen - Wie?
  Antworten mit Zitat      
Hallo zusammen,

da ich bisher kaum MATLAB-Erfahrung habe, stehe ich absolut auf dem Schlauch und finde keine Lösung. Vielleicht könnt ihr mir ja helfen. Smile

Folgendes Problem (vereinfacht):
Ich habe in einer Zeitreihe über drei Jahre Bruttoinlandsprodukte/Kopf und Einwohnerzahlen von zwei Ländern betrachtet. Diese Matrizen habe ich aus Excel importiert:
Code:
BIP/Kopf (bzw. val):
'Region'        '1999' '2000' '2001'
'Deutschland'      21    23    26
'England'          18    19    23

Einwohner (bzw. pop):
'Region'        '1999' '2000' '2001'
'Deutschland'      7     7     8
'England'          6     7     8

Nun möchte ich jeweils den GINI-Koeffizienten der Jahre berechnen. Das richtige Tool dafür habe ich gefunden:
http://www.mathworks.com/matlabcent.....ent-and-the-lorentz-curve

Ich bin in der Lage, die Berechnung mit g = gini(pop,val) zu starten. Allerdings funktioniert das nur, wenn ich zuvor pop und val umbastel zu den zwei Vektoren val und pop, die nur die Daten aus 1999 enthalten.
Code:
%   The vectors pop and val must be equally long and must contain only
%   positive values (zeros are also acceptable).
val:  und   pop:
21            7
18            6

Kann ich die Angabe (pop,val) in irgendeiner Form so präzisieren, dass ich nicht jedes Mal neue Vektoren mit den erforderlichen Daten aus dem zu prüfenden Jahr erstellen muss, sondern nur die für die Berechnung benötigten Bereiche aus der Gesamtmatrix "markiere"?
Auf die oberste Zeile mit den Jahresangaben (und erste Spalte mit den Ländernamen) könnte ich auch verzichten und sie direkt löschen. Dann würde es ja eigentlich schon reichen, wenn ich die Spalte bestimmen könnte, die zur Berechnung genutzt wird.
Sinnbildlich stelle ich es mir dann so vor, um den GINI eines bestimmten Jahres zu berechnen:
Code:
g = gini(popSPALTE2,valSPALTE2)

Ist das überhaupt möglich?

Alternativ wäre ich auch an einer Lösung interessiert, die automatisch für jede Spalte der Matrix den GINI berechnet und dann in einem Ergebnisvektor ausgibt (wobei sich das für meine Laienkenntnisse komplizierter anhört).

Ich hoffe, jemand kann mir bei der Lösung meines Problems helfen, ich werde noch verrückt Confused

Liebe Grüße,
Jana

EDIT: Nur etwas mehr präzisiert.
Private Nachricht senden Benutzer-Profile anzeigen


Jana
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 26.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.03.2011, 19:53     Titel:
  Antworten mit Zitat      
Ich bin nun selbst auf eine Lösung gekommen, die ich vorher wohl mehrfach übersehen habe. Rolling Eyes Nun ja, aller Anfang ist wohl doch schwer...

Nach Entfernung der ungenutzten Informationen der obersten Zeile und ersten Spalte funktioniert es (beispielsweise für das zweite Jahr) mittels
Zitat:
g = gini (pop(:,2),val(:,2))


Mein drängendes Problem ist damit zumindest beseitigt, allerdings würde mich nun interessieren, ob bzw. wie es möglich ist, die GINIs jeweils aller Jahre zugleich zu berechnen und sie dann in einem Vektor nebeneinander ausgeben zu lassen. Ideen? Smile
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 - 2024 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.