cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Due to the recently reported Microsoft outage, users may be temporarily unable to access My JMP or experience a delay receiving their verification codes. If you have previously installed JMP on your computer, this outage should not impact your ability to access the software. My JMP services will be restored as soon as Microsoft resolves this issue.
  • Image to Table JMP extension imports single or batch images as data tables. Useful to extract curves from pictures or convert image data to curve data to use in analyses like Functional Data Explorer. Download and install the extension.

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
cpatty
Level I

Wrong expression type error

Hey Community,

 I have a formula that works perfectly when I use in a table column but will not work at all in my script. I'm certain I've overlooked something stupid but can't seem to figure it out. Anyone want to give it fresh eyes? 

 

dt3 << New Column( "Age Group", Character, "Nominal" );

dt3:Age Group << Set Each Value(
    If(
        :Overdue Age < 1, Empty(),
        1 <= :Overdue Age < 90, "<3 mo",
        90 <= :Overdue Age < 181, "3-6 mo",
        180 <= :Overdue Age < 366, "6-12 mo",
        :Overdue Age > 365, "More than 12 mo"
    )
);

This is the error I'm getting, below.

 

cpatty_0-1720747011453.png

 

Thanks!

1 REPLY 1
jthi
Super User

Re: Wrong expression type error

Try changing Empty() to "" and add "" for else statement

Names Default To Here(1); 

dt = open("$SAMPLE_DATA/Big Class.jmp");

dt << New Column( "Age Group", Character, "Nominal");

Column(dt, "Age Group") << Set Each Value(
    If(
        :Age < 13, "",
        13 <= :Age < 14, "<3 mo",
        14 <= :Age < 17, "3-6 mo",
        :Age >= 17, "More than 12 mo",
        ""
    )
);
-Jarmo

Recommended Articles