Ich möchte beim Teilen von Datentabellen Mehrfachantwortspalten erstellen können. Dies würde es dem Benutzer ermöglichen, zu erkennen, dass es in den Spalten, die Sie nicht gelöscht haben, mehrere Werte gibt (derzeit wird der erste Wert verwendet? Wert basierend auf der Reihenfolge?).
Ich kann ziemlich einfach meine eigene benutzerdefinierte Split-Plattform skripten, aber ich würde lieber die eigene von JMP verwenden. Unten ist ein Beispielskript mit „normaler“ Aufteilung und was ich gerne hätte (kann bereits mit der Kombination von Spalten durchgeführt werden, aber ohne Skripterstellung ist das ein Aufwand).
Names Default To Here(1);
dt = New Table("MEAS_DATA",
Add Rows(10),
Compress File When Saved(1),
Set Cell Height(19),
New Column("ID", Numeric, "Continuous", Format("Best", 12), Set Values([1, 1, 2, 2, 3, 3, 4, 4, 5, 5])),
New Column("Process",
Character,
"Nominal",
Set Values(
{"MEASUREMENT_A", "MEASUREMENT_B", "MEASUREMENT_A", "MEASUREMENT_B", "MEASUREMENT_A", "MEASUREMENT_B", "MEASUREMENT_A",
"MEASUREMENT_B", "MEASUREMENT_A", "MEASUREMENT_B"}
)
),
New Column("Value", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 1, 4, 7, 1, 2, 6, 2, 1])),
New Column("Error", Character, "Multiple Response", Set Values({"0", "0", "1", "0", "2", "1", "0", "0", "0", "0"})),
New Column("Status", Numeric, "Continuous", Format("Best", 12), Set Values([1, 1, 0, 1, 0, 0, 1, 1, 1, 1])),
New Column("Time", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 1, 2, 1, 2, 1, 2, 1, 2]))
);
dt_split = dt << Split(Output table("Split"),
Split By(:Process), Split(:Value), Group(:ID), Sort by Column Property);
//suggestion... directly from split? I could also fairly easily script this
//multiple response only supports character data, but doesn't really matter in my use cases (usually)
dt_mult_resp = dt << Split(
Output table("Multiple_response_split"),
Split By(:Process),
Split(:Value, :Error, :Status, :Time),
Group(:ID)
);
dt_mult_resp << Combine Columns(columns(:Error MEASUREMENT_A, :Error MEASUREMENT_B), Column Name("Error"), Delimiter(","));
dt_mult_resp << Delete Columns(:Error MEASUREMENT_A, :Error MEASUREMENT_B);
dt_mult_resp << Combine Columns(columns(:Status MEASUREMENT_A, :Status MEASUREMENT_B), Column Name("Status"), Delimiter(","));
dt_mult_resp << Delete Columns(:Status MEASUREMENT_A, :Status MEASUREMENT_B);
dt_mult_resp << Combine Columns(columns(:Time MEASUREMENT_A, :Time MEASUREMENT_B), Column Name("Error"), Delimiter(","));
dt_mult_resp << Delete Columns(:Time MEASUREMENT_A, :Time MEASUREMENT_B);
Ich denke, dass dies höchstwahrscheinlich das neue Col List Box in der Split-Plattform sein sollte (und wenn das nicht möglich ist, aktivieren Sie das Kontrollkästchen, aber das ist meiner Meinung nach keine so gute Option).