|
|
Häufigkeiten anzeigen mit 2 Attributen (Gewichtung) |
|
Maria10 |
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.05.2008, 10:29
Titel: Häufigkeiten anzeigen mit 2 Attributen (Gewichtung)
|
|
Hallo!
Auch ich bin noch recht neu bei Matlab und habe ein, für euch hoffentlich kleines, Problem.
Und zwar geht es um die Auswertung eines Bestandes. Es sind die Werte
Zeit und Anzahl in einem Array vorhanden.
Nun soll ausgegeben werden wie oft welche Häufigkeit vorkommt (kein Problem mit dem hist-Befehl)
doch muss das Ganze noch mit der Zeit gewichtet werden. Das heisst
dass berücksichtigt werden muss wie lange der jeweilige Token in dem Bestand verweilt.
Demnach gibt es einen Vektor mit allen Zeiten (Zeit= R (:,1)) und
einen Vektor mit der Anzahl der Token (AnzahlToken = R (:,2))
die dann nach der Anzahl der Token in einem Bin (bin= [0:1:50]) sortiert werden sollen (unter Berücksichtigung der Zeit eben...).
Es schient mir dass hier der Histbefehl seine Grenzen erreicht. Habt ihr eine Idee?
DANKE!!
|
|
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 13.05.2008, 11:47
Titel:
|
|
Moin,
könntest du das mit der zeitlichen Gewichtung noch etwas näher erklären? Im Moment bin ich noch nicht recht dahinter gekommen, wie das gemeint ist
Vllt. an nem Beispiel festmachen?!
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Maria10 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.05.2008, 12:12
Titel:
|
|
Sinn der Sache soll sein, dass der Bestand über die Zeit gemittelt wird.
Zum Beispiel befinden sich 3 Token, 2 Sekunden in dem Bestand und später 5 Token 4 Sekunden.
Somit wirken sich die 5 Token mehr auf den Bestand aus, da sie doppelt so lange drin sind.
Anzahl Zeit Bin [0:1:5]
3 4
4 5
5 6
4 8
3 1
....sollen z.B nach der Häufigkeit der Anzahl in den Bin sortiert werden sodass man weiss wie häufig, wieviele Token wie lange im Bestand sind und man dieses dann in einer Grafik ausgeben kann.
Prinzipiell: Anzahl * Zeit nach Anzahl sortiert...
Gruß und Danke fürs mitüberlegen!!!
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 13.05.2008, 13:27
Titel:
|
|
Achso...
Das lässt sich eigentlich relativ leicht lösen:
Ich hoffe ich habe dich richtig verstanden...
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Maria10 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.05.2008, 13:46
Titel:
|
|
hm... so wird doch aber die Haeufigkeit des Ergebnisses aus R(:,1)*R(:,2) in die Bins sortiert und gezaehlt oder?
hier soll die Hauefigkeit von R(:,2) in den Bins gezählt werden aber eben "gewichtet" mit R(:,1), sodass wenn 3 Token 2 Sekunden im Bestand sind hinterher im Histogramm der Balken bei den 3 Token doppelt so hoch ist als wäre er eine Sekunde drin gewesen, und bei z.B. 4 Sekunden 4 mal so hoch (mit 4 gewichtet oder 4 mal gezählt, also 4 mal so wichtig ).
Somit soll hinterher über der 3 im Histogramm anstatt 2 mal ne 3 gezählt, 2*3 und 4*3 also 6 mal ne 3 stehen als Anzahl.
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 13.05.2008, 14:24
Titel:
|
|
Achso meinst du das...
Unter der Annahme das es sich um 50 mögliche Platzierungen handelt, würde ich sonst folgendes vorschlagen:
Das sollte klappen...
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Maria10 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.05.2008, 14:34
Titel:
|
|
Hey...
cool, ausser dass die Spalten vertauscht waren klappts, auch bei anderen Plazierungen. Ich danke dir!!!!!!!!
|
|
|
Maria10 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.05.2008, 11:01
Titel:
|
|
uiuiui... nun möchte ich aber auf mehr als ein Spaltenpaar zugreifen. Also auf eine Matrix (R) die ich zu Spalten zusammenfasse und dann wie oben verarbeiten möchte.
Die erste Spalte in B stimmt auch aber danach kommen nur noch 0...
warum???
Hier der Code:
LG
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 27.05.2008, 11:36
Titel:
|
|
Irgendwie würfelst du hier einiges durcheinander habe ich das Gefühl.
Erklär doch bitte nochmal, was du machen möchtest, denn dein jetztiger Code und der Code von oben haben inhaltlich nicht mehr viel gemeinsam, finde ich...
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Maria10 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.05.2008, 12:43
Titel:
|
|
Also der Sinn ist immer zwei, nebeneinanderliegenden Vektoren aus einer Matrix (R) zu ziehen, die Gewichtung von oben darauf anzuwenden und das Ergebnis in eine neue Matrix (B) zu schreiben.
Gruß
|
|
|
Maria10 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 10
|
|
|
|
Anmeldedatum: 13.05.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.05.2008, 15:17
Titel:
|
|
guckt mal es sieht nun so aus... läuft aber immernoch nicht richtig. Woran könnte es liegen???
Danke und LG
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 27.05.2008, 16:08
Titel:
|
|
Moin Maria,
das sollte funktionieren:
Es lag daran, dass du mit
immer die erste Zeile überschrieben hast. Du hast schon soweit richtig gedacht, allerdings müsstest du dich nochmal etwas in den Aufbau von Matritzen und Vektoren in Matlab einarbeiten dann klappts das nächste Mal vielleicht besser...
Gruß
Alex[/code]
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|