colonne
Buongiorno a tutti,
Ho diverse colonne:
1- Colonne “Numero medio”.
2- colonne "numero".
con numero compreso tra 1 e 10.000.
Normalmente ogni colonna appartenente al gruppo (2) dovrebbe appartenere anche al gruppo (1) e viceversa. Quindi dovremmo avere lo stesso numero di colonne in entrambi i gruppi.
Tuttavia, le colonne appartenenti al gruppo 1 non appartengono al gruppo 2 e viceversa.
Esempio : "Media 730" ma la colonna "730" non esiste.
L'obiettivo è avere l'intersezione di questi 2 gruppi in modo che ci siano le stesse colonne nei 2 gruppi.
Tabella datiRe: colonneL'array associativo può aiutare quando si effettua l'intersezione Array associativi nelle operazioni sugli insiemi (jmp.com) se riesci a far sembrare le chiavi uguali. Oppure puoi impilare i tavoli, renderli simili e quindi eseguire un join. Penso che la parte più difficile potrebbe essere come ottenere quegli elenchi di colonne che ti interessano e questo dipende dai tuoi dati.
Ri: colonneLe colonne si trovano nella stessa tabella dati.
Ecco un esempio preso dal mio database:

Miro a rimuovere le colonne "durata 721", "730" e "750"
Re: colonneUn'opzione che utilizza gli array associativi
Names Default To Here(1);
dt = Open("$DOWNLOADS/AA.jmp");
// build
aa_duree = Associative Array();
aa_nonduree = Associative Array();
For Each({col_name}, dt << Get Column Names("String"),
If(Word(1, col_name) == "durée",
aa_duree[Word(-1, col_name)] = col_name;
, !IsMissing(Regex(col_name, "\d+")),
aa_nonduree[col_name] = 1;
,
continue()
);
);
aa_duree_copy = aa_duree;
aa_duree_copy << Intersect(aa_nonduree);
cols_to_keep = Insert(aa_duree_copy << get keys, aa_duree_copy << get values);
aa_duree_copy2 = aa_duree;
aa_nonduree_copy = aa_nonduree;
aa_duree_copy2 << remove(aa_nonduree);
aa_nonduree_copy << remove(aa_duree);
cols_to_remove = Insert(aa_nonduree_copy << get keys, aa_duree_copy2 << get values);
show(cols_to_keep, cols_to_remove);
Ci sono anche altre opzioni, come unire tabelle impilate o usare solo liste
Ri: colonneOttimo grazie funziona!
Tuttavia le colonne sono nell'elenco "cols_to_remove", come posso eliminare queste colonne direttamente nella tabella dei dati?
Re: colonneUtilizzo dt<
