Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hallo zusammen,
Ich brauche Hilfe mit Qlikview! Zuerst habe ich eine 1-Spalte-Tabelle hochgeladen, mit Werte zwischen 0 und 1. Ich möchte eine leere Tabelle mit 2 Spalten erzeugen. Die erste Saplte sollte mit der Reinfolge 0; 0,001; 0,002 etc bis 1 füllen werden. Die zweite Spalte sollte mit dem Anzahl der Werte in die Intervalle 0-0,001; 0,001-0,002 etc bis 0,999-1 füllen werden.
Könnt Ihr mir helfen??
Vielen Dank fur eure Zeit,
Eduardo
Hallo,
man kann zwar die Ergebnisse auch im Skript materialisieren, aber das ist nicht die eigentliche Idee von Qlikview.
Zur Korrektur deines Diagrammes
Dimension: =class([Z1V1 iO&niO], 0.001)
Wert: count([Z1V1 iO&niO])
Zum Erstellen einer Tabelle im Skript
B:
Load
Floor([Z1V1 iO&niO], 0.001) as A_Intervall,
count([Z1V1 iO&niO]) as Anzahl
Resident
A
Group By
Floor([Z1V1 iO&niO], 0.001);
Hallo,
das kann man direkt mit einem Diagramm lösen
Falls es zwingend im Skript als Tabelle erstellt werden soll, einfach nochmal melden.
Viele Grüße
Markus Bauernschmitt
Vielen Dank für deine Hilfe Markus, aber ich habe es nicht geschafft... In mein Skrypt habe ich eine leere tabelle mit 2 Spalten erzeugt:
TabelleLeer:
Load
[Intervalle]
,Dann habe ich ein Diagramm, Typ Tabelle erzeugt.
In "Dimensions des Diagramms" habe ich eine "neue dynamische Dimension erzeugt. Expression: class(Intervalle, 0.001)
In Formeln habe ich geschrieben: count([Z1V1 iO&niO])
[Z1V1 iO&niO] das ist der Name meine Spalte mit Werte zwichen 0 und 1.
Ich weiss nicht warum aber Qlikview versteht "Intervalle" nicht, wenn ich class(Intervalle, 0.001) schreibe...
Am ende bekomme ich das:
=class(Intervalle, 0.001) | count([Z1V1 iO&niO]) |
3604 | |
- | 3604 |
Kannst du mir bitte weiterhelfen?? Och bin ganz neu mit Qlikview. Außerdem wurde ich es gern im Skript als Tabelle erstellen, um später diese zwei Spalten in einem Liniendiagramm zu plotten.
Vielen Dank!!!
Eduardo
Hallo,
man kann zwar die Ergebnisse auch im Skript materialisieren, aber das ist nicht die eigentliche Idee von Qlikview.
Zur Korrektur deines Diagrammes
Dimension: =class([Z1V1 iO&niO], 0.001)
Wert: count([Z1V1 iO&niO])
Zum Erstellen einer Tabelle im Skript
B:
Load
Floor([Z1V1 iO&niO], 0.001) as A_Intervall,
count([Z1V1 iO&niO]) as Anzahl
Resident
A
Group By
Floor([Z1V1 iO&niO], 0.001);
Vielen Dank! Die zweite Lösung ist genau was ich brauche!!!!
Hallo Eduardo,
Versuche Sie diese Script:
Im Book1.xlsx habe ich einige Testdaten fur Tabelle1
--------------------------------------------------------------------------------
Tabelle1:
LOAD Werte,
ceil( Werte , 0.001 ) as UpperInterval
FROM
C:\Book1.xlsx
(ooxml, embedded labels, table is Sheet1);
For counter=0 to 1 step 0.001
temp:
LOAD * INLINE [
UpperInterval
$(counter)
];
NEXT counter;
temp1:
noconcatenate Load UpperInterval resident temp;
left join
load UpperInterval, Werte resident Tabelle1;
Tabelle2:
Load UpperInterval as Spalte1, Count(Werte) as Spalte2 Resident temp1
Group by UpperInterval;
Drop tables temp1, temp;
Drop field UpperInterval;
----------------------------------------------------------------
Ich hoffe das ist gut fur Sie,
Carmen
Hallo Markus!
Entschuldig bitte, dass ich dich noch einmal störe. Aber ich möchte mein Diagramm ein bischen ergänzen. Ich habe diese Input-Daten:
Datum Tag | Z1V1 iO&niO | Z1V2 iO&niO | Z4V1 iO&niO | Z4V2 iO&niO |
01.08.2012 | 0,417 | 0,17 | 0,164 | 0,431 |
02.08.2012 | 0,451 | 0,187 | 0,158 | 0,378 |
03.08.2012 | 0,425 | 0,168 | 0,168 | 0,435 |
04.08.2012 | 0,456 | 0,174 | 0,17 | 0,456 |
05.08.2012 | 0,418 | 0,177 | 0,183 | 0,441 |
06.08.2012 | 0,451 | 0,185 | 0,165 | 0,416 |
07.08.2012 | 0,399 | 0,154 | 0,149 | 0,441 |
08.08.2012 | 0,483 | 0,188 | 0,166 | 0,451 |
09.08.2012 | 0,477 | 0,201 | 0,172 | 0,484 |
10.08.2012 | 0,472 | 0,173 | 0,153 | 0,419 |
Ich möchte die 4 Verteilungskurven in das gleiche Diagramm erzeugen. (X-Axis soll gemeinsam sein 0; 0,001; 0,002 .... bis 0,999; 1).
Außerdem wurde ich gern die Verteilung nur mit die Werte eines bestimmten Zeitraum erzeugen. Dafür habe ich die Spalte "Datum Tag". Ich wurde dann gern zuerst die Zeitraum wählen (zB von 5.08.2012 bis 10.08.2012) und mit diesen Werte die Verteilung bauen. Ist es das möglich?
Noch einmal, vielen vielen Dank!!!!
Eduardo
Hallo,
bringe zuerst deine Werte in eine vernünftige Form.
Spalte1: Datum
Spalte 2: Reihenname
Spalte 3: Wert
Im Notfall so
LOAD Datum,
'Z1V1' as Reihe,
Z1V1 as Werte
FROM
[1.xlsx]
(ooxml, embedded labels, table is Tabelle1);
LOAD Datum,
'Z1V2' as Reihe,
Z1V1 as Werte
FROM
[1.xlsx]
(ooxml, embedded labels, table is Tabelle1);
LOAD Datum,
'Z1V3' as Reihe,
Z1V3 as Werte
FROM
[1.xlsx]
(ooxml, embedded labels, table is Tabelle1);
LOAD Datum,
'Z1V4' as Reihe,
Z1V4 as Werte
FROM
[1.xlsx]
(ooxml, embedded labels, table is Tabelle1);
Jetzt erzeuge ein Liniendiagramm
Dimension:
1. Eintrag: class( Werte, 0.01)
2. Eintrag: Reihe
Formel:
count( Werte )
Damit hat sich dein anderer Forumseintrag auch schon erledigt.
Ich wiederhole mich wahrscheinlich. Bitte in diesem Fall die Werte nicht gleich im Skript aggregieren
Vielen Dank!!! Du hast mir viel geholfen. Leider haben die Werte in X-Axis keine Reihenfolge, so die Verteilung ist falsch... Die Lösung mit:
B:
Load
Floor([Z1V1 iO&niO], 0.001) as A_Intervall,
count([Z1V1 iO&niO]) as Anzahl
Resident
A
Group By
Floor([Z1V1 iO&niO], 0.001);
funktioniert richtig gut, aber ich weiß nicht wie ich das gleiche aber für die 4 Spalten machen kann. Vielen Dank für deine Zeit!
Eduardo
Vielen Dank!!! Du hast mir viel geholfen. Leider haben die Werte in X-Axis keine Reihenfolge, so die Verteilung ist falsch... Die Lösung mit:
B:
Load
Floor([Z1V1 iO&niO], 0.001) as A_Intervall,
count([Z1V1 iO&niO]) as Anzahl
Resident
A
Group By
Floor([Z1V1 iO&niO], 0.001);
funktioniert richtig gut, aber ich weiß nicht wie ich das gleiche aber für die 4 Spalten machen kann. Vielen Dank für deine Zeit!
Eduardo