Rendere i sottoinsiemi più intelligenti: è necessario aiutoCiao Hive Mind,
Molto spesso creo un sottoinsieme della mia tabella dati.
Il mio metodo attuale è
- Trova un valore che sia rappresentativo del mio sottoinsieme
- Fare clic con il tasto destro -> Seleziona le celle corrispondenti
- Tabelle -> Sottoinsieme di righe selezionate, tutte le colonne
- Salvare il file
In alternativa, lo farò
- Utilizzare "Salva con nome" per creare un nuovo file
- Trova un valore che sia rappresentativo del mio sottoinsieme
- Fare clic con il tasto destro -> Seleziona le celle corrispondenti
- Inverti selezione
- Elimina righe
Lo faccio molte volte a settimana... ed è doloroso...
Quindi ecco la mia idea per cui ho bisogno di aiuto:
Voglio creare uno script che quando ho selezionato le celle corrispondenti posso fare clic su un pulsante che creerà un sottoinsieme delle righe selezionate:
Ecco il mio scatto migliore finora (non funziona)
Dt = current data set();
My_list = dt << Get Selected();
Dt << Subset(
Selected Rows( 0 ),
List;
Selected columns only( 0 )
);
Hai altre idee o dovrei fare qualcosa di completamente diverso?
Saluti,
cristiano
Automazione e scriptingCombinazione e pulizia dei datiRe: Rendere i sottoinsiemi più intelligenti: è necessario aiutoGrazie Jim, è stata una risposta molto utile.
Goditi il weekend!
Re: Rendere i sottoinsiemi più intelligenti: è necessario aiutoGrazie per la risposta Jarmo! Sto creando un componente aggiuntivo con script simili che mi ritrovo a ripetere!
punto e virgola è uno di questi XD
Names Default To Here( 1 );
dt = Current Data Table();
nr = nrows(dt);
col_names = dt << Get Selected Columns (String);// get column names (String);
for (i = 1, i <= nitems(col_names), i++,
one_col = column(dt, col_names[i]);
for (k = 1, k <= nr, k++,
one_col[k] = substitute(one_col[k], ".", ","); // Replace decimal with comma
//one_col[k] = substitute(one_col[k], ",", "."); // Replace comma with decimal
);
one_col << Data Type(Numeric);
one_col << Set Modeling Type ("Continuous");
);L'ho preso da un altro script della community.
Re: Rendere i sottoinsiemi più intelligenti: è necessario aiutoIl codice specificato deve solo essere leggermente modificato per ottenere ciò che desideri.
Dt = current data set();
Deve essere
Dt = current data table();
e la piattaforma del sottoinsieme è già in grado di trovare tutte le righe selezionate e utilizzarle per la selezione
Dt << Subset(
Selected Rows( 1 ),
Selected columns( 0 )
);
Metti tutto insieme, sembra
Names Default To Here( 1 );
Dt = current data table();
Dt << Subset(
Selected Rows( 1 ),
Selected columns( 0 )
);
Come suggerisce Jarmo, potresti trasformarlo in una scorciatoia della barra degli strumenti.
Re: Rendere i sottoinsiemi più intelligenti: è necessario aiutoHo creato un "componente aggiuntivo" (ha molte altre scorciatoie, ecco perché è un componente aggiuntivo) che fondamentalmente imposta semplicemente la scorciatoia per eseguire semplici script come
Current Data Table() << Subset(Selected Rows(1), Selected Columns Only(0));

Puoi anche farlo creando una barra degli strumenti e aggiungendovi un collegamento.
Re: Rendere i sottoinsiemi più intelligenti: è necessario aiutoIn realtà, ho iniziato con una versione come questa, solo con le righe e le colonne selezionate.
La versione attuale include ora tutte le colonne ed è un sottoinsieme collegato .
Non potrei lavorare in modo efficiente senza di essa.
applicazione 1) selezionare alcuni punti in un grafico -> generare il sottoinsieme
applicazione 2) seleziona alcune righe -> apri il sottoinsieme collegato -> usa il sottoinsieme come telecomando per inserire nuovi valori:
Se preferisci l'altra versione, puoi andare nella cartella AddIn e modificare il codice jsl.
Che ne dici di attivare due azioni diverse, a seconda dello stato CTRL corrente?
Qualcuno sa come ottenere lo stato CTRL dopo aver attivato lo script facendo clic sull'icona di un'icona della barra degli strumenti?
Controllo-tasti-modificatori-ctrl-alt-shift-in-script