So zählen Sie eine Reihe von Elementen spaltenübergreifendHallo JMP-Mitarbeiter und Experten,
Ich habe ein einfaches Problem und denke, dass JSL der beste Ansatz wäre, aber ich weiß nicht, wie man in JSL programmiert. Ich sollte wahrscheinlich Zeit finden und lernen!
Grundsätzlich habe ich eine Liste mit Elementen, „Tee“, „Eier“, „Brot“, „Milch“ usw. Jedes Element erscheint einzeln in einer Spalte, und die Anzahl der Spalten kann variieren, wäre aber in einer bestimmten Tabelleninstanz festgelegt . Jede Zeile stellt eine unabhängige Beobachtung von Elementen dar. Ein bestimmtes Element kann in jeder Spalte, in jeder Zeile erscheinen, aber nur einmal in einer Zeile oder überhaupt nicht.
Ich möchte ein JSL-Skript verwenden, um in einer neuen Spalte anzugeben, ob ein bestimmter Satz von Elementen (z. B. „Tee“, „Milch“, „Brot“) in einer bestimmten Zeile vorhanden ist oder nicht. Die Reihenfolge des Auftretens in einer Zeile spielt keine Rolle. Die von mir gezählten Elemente müssen jedoch alle angezeigt werden. Ich hoffe, diese JSL als Vorlage zum Ändern und Abfragen des Vorkommens von Elementsätzen in Tabellen mit Zeilen von bis zu 10.000 verwenden zu können. Abschließend möchte ich Statistiken ableiten wie: 10 % der Einträge haben „Tee“ und „Speck“, 5 % haben „Tee“, „Milch“, „Joghurt“ usw
Gibt es eine JMP-Plattform, die das kann?
Im Anhang finden Sie einen Beispieldatensatz.
Vielen Dank!
Automatisierung und SkripterstellungDatenmischung und -bereinigungMassenanpassungQualitäts- und VerfahrenstechnikBetreff: So zählen Sie eine Reihe von Elementen spaltenübergreifendDanke @txnelson !
Betreff: So zählen Sie eine Reihe von Elementen spaltenübergreifendHier ist eine Option Verwendung assoziativer Arrays und ihrer Mengenoperationen
Names Default To Here(1);
dt = Open("$DOWNLOADS/items.jmp");
list_to_search_for = {"Tea", "Milk", "Bread"};
aa_mask = Associative Array(list_to_search_for);
dt << New Column("Match", Numeric, Continuous, << Set Each Value(
aa_row = Associative Array(dt[Row(), 0]);
temp_mask = aa_mask;
temp_mask << Remove(aa_row);
If(N Items(temp_mask) == 0,
1
,
0
);
));

JMPs Verbraucherforschungsplattform Könnte auch hilfreich sein, aber ich habe es nicht verwendet, daher bin ich mir nicht sicher, ob es nach solchen Kombinationen suchen kann, die Sie benötigen (Bedingte Zuordnung könnte hilfreich sein?)

Betreff: So zählen Sie eine Reihe von Elementen spaltenübergreifendHier ist eine Formel, die eine 1 in die Indikatorspalte einfügt, wenn die Kombination aus Brot und Joghurt in einer bestimmten Zeile gefunden wird, und eine 0, wenn sie nicht gefunden wird
dt = Current Data Table();
itemList = dt[Row(), Index( 1, 5 )];
If( Contains( itemList, "Bread" ) & Contains( itemList, "Yoghurt" ),
1,
0
);