Filtra le colonne della tabella in base a un elencoCiao a tutti,
Uso JMP Pro da qualche tempo, anche se non ho mai eseguito script con esso. Sto anche esplorando JMP Genomics, poiché utilizzo una discreta quantità di analisi "omiche" utilizzando varie piattaforme. Per ora, sono nel mondo JMP Pro e sto cercando di capire come filtrare le tabelle di dati.
Una cosa che non riesco a capire è come filtrare (o creare una nuova tabella) una tabella basata su un elenco (contenente i nomi delle colonne) o sui risultati di un test. Ad esempio, ho una tabella ampia (Tabella 1) di 600 righe x 10.000 colonne. Ho un'altra tabella (tabella 2) con una singola colonna di ID di colonna dalla tabella 1 (200 nomi di colonne).
C'è un modo per:
- Creare gruppi di colonne nella tabella 1 in base agli ID di colonna nella tabella 2?
- In alternativa, crea un sottoinsieme della Tabella 1, basato sugli ID di colonna nella Tabella 2?
Penso che uno di questi aiuti con il mio flusso di lavoro, ma non sono stato in grado di trovare una soluzione sui forum qui o all'interno della guida di aiuto.
Grazie in anticipo!
Jonathan
Oggetto: Filtrare le colonne della tabella in base a un elencoGrande! Grazie per avermi accompagnato in questo. Molto utile!Oggetto: filtrare le colonne della tabella in base a un elencoDai miei test, credo che l'elenco sia stato creato, ma si sta perdendo nel numero di colonne che hai.Quindi ho apportato una semplice modifica al codice, aggiungendo un nome per l'elenco e quindi dicendo all'elenco di essere spostato all'inizio dell'elenco di colonne.
names default to here(1);
dt = Current Data Table();
dtSingle = open ("TCAlist.jmp");
//longList=dt<<GET column="" names=""></GET>Oggetto: filtrare le colonne della tabella in base a un elencoOggetto: filtrare le colonne della tabella in base a un elencoSe puoi allegare le 2 tabelle di dati, darò un'occhiata al problema
Oggetto: filtrare le colonne della tabella in base a un elencoQuindi non ci sono messaggi/errori che appaiono. Le colonne sono scritte correttamente e non ci sono problemi di maiuscole e minuscole. Quando lo eseguo, la seconda parte dello script funziona ... crea un sottoinsieme con i 3 elementi elencati in "TCAlist". L'unica cosa che non accade è la creazione del gruppo sul tavolo principale. C'è qualcosa che non va nelle prime righe relative alle mie tabelle? La tabella dei dati corrente lo elimina?Oggetto: filtrare le colonne della tabella in base a un elencoQuali messaggi ci sono nel registro? Le colonne sono tutte scritte correttamente? C'è un problema con maiuscole/minuscole???Oggetto: filtrare le colonne della tabella in base a un elencoGrazie Jim!
Sono riuscito a far funzionare lo script "crea un sottoinsieme" sulle mie 2 tabelle di dati, ma "crea un gruppo" su quelle stesse 2 tabelle non sembra creare il gruppo nella tabella principale. Funziona bene sull'esempio di dati di esempio però. Probabilmente manca qualcosa di ovvio
Grazie per l'aiuto!
names default to here(1);
dt = Current Data Table();
dtSingle = Open ("TCAlist.jmp");
// Create a group
theList = dtSingle:Cols << get values;
dt << group columns(theList);
// Create a subset
// Select columns in data table dt, that are in dtSingle
try( dt << Select Columns( dtSingle:Cols << get values ));
dtSubset = dt << subset( selected rows(0), selected columns(1) );Oggetto: filtrare le colonne della tabella in base a un elencoEcco un semplice script che mostra entrambe le richieste specificate
names default to here(1);
dt=open("$SAMPLE_DATA/semiconductor capability.jmp");
dtSingle = New Table("Single Column", new column("Cols", character,values({"PNP2","NPN3","INM1"})));
// Create a group
theList = dtSingle:Cols << get values;
dt << group columns( theList);
// Create a subset
// Select columns in data table dt, that are in dtSingle
try( dt << Select Columns( dtSingle:Cols << get values ));
dtSubset = dt << subset( selected rows(0), selected columns(1) );