Ciao. Qualcuno sa come controllare se l'estensione ".jmp" appare alla fine del nome della tabella quando viene aperta?
Ho notato che quando apro alcuni tavoli c'è, ma su altri no. Non so perché. Sto scrivendo uno script che utilizza il nome della tabella e ho bisogno che sia coerente. C'è una preferenza che posso usare per controllarlo o qualche comando? Ho preso in considerazione la possibilità di rimuovere arbitrariamente il file .jmp da tutte le tabelle, se trovato, ma questa non è la mia prima preferenza.
JMP Pro 15.2.1
Mac OS Big Sur 11.6
Ciao @nikles ,
Questo non risponde direttamente alla tua domanda, ma suggerisco di evitare i riferimenti alle tabelle per nome.Il problema più comune che vedo è che qualcuno ha già aperto un tavolo con il nome che ti interessa, o una futura modifica al tuo script con conseguenze indesiderate.Invece, puoi salvare un riferimento a quella tabella e utilizzarlo nel resto dello script.Se stai contando sul fatto che l'utente abbia già aperto un tavolo specifico, puoi cercarlo. Ecco alcuni esempi:
Names default to here(1);
dt1 = Open( "$Sample_data/iris.jmp" );
dt1 << Set Name("iris2");
dt1 = Open( "$Sample_data/iris.jmp" );
dt2 = Open( "$Sample_data/big class.jmp" );
//Get first matching table
dt3 = filter each({dt}, Get data table list(), Contains(dt << get Name,"iris"))[1]
//or ask the user which one to use
TableList = filter each({dt}, Get data table list(), Contains(dt << get Name,"iris"));
winSelectTable = New Window("Which Table?", << Modal, << Return Result,
lbTable = List Box(TableList)
);
dt3 = filter each({dt}, Get data table list(), (dt << get Name) == winSelectTable["lbTable"][1])[1];
//Now always refer to that table using the table reference
dt3 << Distribution( Continuous Distribution( Column( :Sepal length ) ) );
//If making new tables in your script, you can usually get those references
//from the functions that create them:
dt4 = (dt3 << Tabulate(
Show Control Panel( 0 ),
Add Table(
Column Table( Analysis Columns( :Sepal length ) ),
Row Table( Grouping Columns( :Species ) )
)
)) << Make Into Data Table;
dt4 << Get Name()'
n, puoi prima cercarlo e poi utilizzare un riferimento.