J'aimerais pouvoir créer des colonnes de réponses multiples lors du fractionnement de tables de données. Cela permettrait à l'utilisateur de voir qu'il y a plusieurs valeurs dans les colonnes que vous n'avez pas supprimées (actuellement, cela prend la première ? valeur basée sur l'ordre ?).
Je peux assez facilement créer un script pour ma propre plate-forme Split personnalisée, mais je préfère utiliser celle de JMP. Vous trouverez ci-dessous un exemple de script avec une division "régulière" et ce que j'aimerais avoir (peut déjà être fait avec des colonnes combinées mais sans script, c'est un problème).
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);
Je pense que cela devrait très probablement être une nouvelle boîte de liste de colis dans la plate-forme Split (et si ce n'est pas possible, cochez la case, mais ce n'est pas une bonne option à mon avis).