Choose Language Hide Translation Bar
Highlighted
MarcoR
Level I

logic function if

Salve sono nuovo di JMP;

chiedo aiuto come risolvere il probelma:

Ho dei valori nella colonna (HB) devo confrontare le seguenti condizioni

se il valore di HB > 150 rislutato "grade 0" SE HB >80 & <90 risultato grade 1; SE HB >90 &< =150 risultato "grado 3"

non riesco non if then and Else, qualquno puoi aiutarmi

GRAZIE

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
pmroz
Super User

Re: logic function if

You are almost there.

If(
	:Hb >= 120, "0",
	100 <= :Hb < 120, "1",
	80 < :Hb < 100, "2",
	"not graded"
)

View solution in original post

4 REPLIES 4
Highlighted
stan_koprowski
Community Manager Community Manager

Re: logic function if

Hi @MarcoR,

You can do this with a formula column

If(
	:HB > 150, "grade 0",
	80 < :HB <= 90, "grade 1",
	90 < :HB <= 150, "grade 3",
	"not graded"
)

Distribution by gradeDistribution by grade

I have attached an example data table with the column formula.

Highlighted
pmroz
Super User

Re: logic function if

The first time you use IF in JSL it can be a challenge.  You have to be very careful about the placment of commas.  I annotate my code to make it a little clearer.  Using Stan's example:

If (:HB > 150, 
// then
	"grade 0",
// else if
	80 < :HB <= 90, 
// then
	"grade 1",
// else if
	90 < :HB <= 150, 
// then
	"grade 3",
// else
	"not graded"
)
Highlighted
MarcoR
Level I

Re: logic function if


@pmroz  ha scritto:

The first time you use IF in JSL it can be a challenge.  You have to be very careful about the placment of commas.  I annotate my code to make it a little clearer.  Using Stan's example:

If (:HB > 150, 
// then
	"grade 0",
// else if
	80 < :HB <= 90, 
// then
	"grade 1",
// else if
	90 < :HB <= 150, 
// then
	"grade 3",
// else
	"not graded"
)

Grazie della risposta ;

in relata il range che mi serve è il segunte ho ripovato secondo le vostre indiazioni ma non funzione,

con excel usavo questa sintassi =SE(HB>120;0;SE(E(B2>=100;B2<=120);1;SE(E(B2>=80;B2<100);2)))

ho provato cosi ma non mi funziona

If (:Hb > 120, "0",
120 < :Hb <= 100, "1",
80 < :Hb <= 100, "2",
"not graded"
)

qunado metto i valori tra 80 e 120 mi restuisce Not Grade

 

Grazie sempre

Highlighted
pmroz
Super User

Re: logic function if

You are almost there.

If(
	:Hb >= 120, "0",
	100 <= :Hb < 120, "1",
	80 < :Hb < 100, "2",
	"not graded"
)

View solution in original post

Article Labels

    There are no labels assigned to this post.