- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Standardizing attributes by column name
I tend to work with the same types of data every day. Every time I load a file, JMP sets some columns as "Continuous" that really work better as nominals.
Is there a way to tell JMP that if it sees a column with a specific name, e.g. "case_id", that it should always flag it as nominal?
I know scripts can do this, but having to run a script every time I open a file has gotten a bit tedious.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Standardizing attributes by column name
Hi @BHarris ,
During import, you can right click the column to define is as nominal. But, I guess you want to automate that without the need to re-defined it again every time you open the working file.
I think if you can convert the script to an "add-in", it is possible to tell JMP that if they see a column with specific name, always define it as nominal whenever you open the file.
Question though;
- the files that you open is not in standardized "column" / "header" position?
- or is it any data file, but the column "case_id" would be consistently present?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Standardizing attributes by column name
Yes, these are .tsv files that have a "case_id" column -- not guaranteed to be in the same column from file to file.
Can add-ins be programmed to run every time a file is opened?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Standardizing attributes by column name
Rather than use default Open file function, you just open the file through add-in.
I've tested simple script like below to convert "case_id" to nominal, for 2 TSV files inside 1 folder.
Pls mind the path that I set is "Documents/TSV".
You can change the path for testing at your PC.
If all good, then you can convert this JSL script to add-in (refer to https://community.jmp.com/t5/Learning-Center/Add-In-Builder/ta-p/276711 )
Hope it helps.
//Open Table to pick file
Names Default To Here( 1 );
file = Pick File(
"Select the TSV file to input",
"$DOCUMENTS/TSV",
{"All Files|*"},
1,
0
);
If( file != "",
dt1 = Open(
file,
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, CSV( 0 ) ),
Strip Quotes( 0 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 1 ),
First Named Column( 1 ),
Data Starts( 2 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
)
);
//Standardize "case_ID" to character nominal
Names Default To Here( 1 );
dt1 :case_id << Data Type( Character ) <<
Set Modeling Type( "Nominal" );