inserire formule nel calcolatore campi

Moderatore: Antonio

Rispondi
oigres
SuperUtente
Messaggi: 126
Iscritto il: 11/02/2015, 17:59

23/03/2018, 14:03

Aiuto!!!
ho questa formula in excel =(SE(G3<-10;0,0023*G3^2 - 0,6665*G3 + 9,664;SE(G3<10; 0,00002*G3^4 - 0,0013*G3^3 + 0,0307*G3^2 + 0,3729*G3 + 14,123; -0,0002*G3^2 + 1,5041*G3 + 2,1252)))*D3/1000. Dove G3 è uguale al mio campo PENDENZA e D3 è uguale al mio campo PERLUN.
Ora dovendo riportare la formula per eseguire il calcolo nella tabella attributi, ho inserito nel mio calcolatore campi la formula ( if( "PENDENZA" < - 10,0,0023 * "PENDENZA" ^ 2 - 0,6665 * "PENDENZA" + 9,664, if( "PENDENZA" <10,0,00002 * "PENDENZA" ^ 4 - 0,0013 * "PENDENZA" ^ 3 + 0,0307 * "PENDENZA" ^ 2 + 0,3729 * "PENDENZA" + 14,123, - 0,0002 * "PENDENZA" ^ 2 + 1,5041 * "PENDENZA" + 2,1252 ) ) ) * "PERLUN" / 1000.
Mi da sempre errore EXPRESSIONE NON VALIDA,
Dove sbaglio? grazie
Sergio
allego lo shape
Allegati
Sen_Trt.rar
(17.27 KiB) Scaricato 16 volte
Avatar utente
Antonio
SuperUtente
Messaggi: 887
Iscritto il: 19/08/2013, 21:33

23/03/2018, 21:46

Ehm, quella formula è francamente illeggibile: puoi spiegarci in linguaggio umano cosa vuoi ottenere..?

:)
oigres
SuperUtente
Messaggi: 126
Iscritto il: 11/02/2015, 17:59

24/03/2018, 9:06

Antonio ha scritto:
23/03/2018, 21:46
Ehm, quella formula è francamente illeggibile: puoi spiegarci in linguaggio umano cosa vuoi ottenere..?

:)
Buon giorno Antonio, in pratica è una formula che estrae i tempi di percorrenza su ogni singola tratta. Sono quei dati che trovi nella campo "PERTEM1" da me inseriti manualmente
Grazie
Sergio
Avatar utente
Antonio
SuperUtente
Messaggi: 887
Iscritto il: 19/08/2013, 21:33

26/03/2018, 20:18

Invece del comando IF, userei l'espressione condizionale:

CASE WHEN condition THEN result END

ad es.

CASE
WHEN pippo<1 THEN pluto
WHEN tizio>1 THEN caio
END
oigres
SuperUtente
Messaggi: 126
Iscritto il: 11/02/2015, 17:59

27/03/2018, 13:55

Antonio ha scritto:
26/03/2018, 20:18
Invece del comando IF, userei l'espressione condizionale:

CASE WHEN condition THEN result END

ad es.

CASE
WHEN pippo<1 THEN pluto
WHEN tizio>1 THEN caio
END
Buon pomeriggio Antonio
No, io penso che la formula con IF sia corretta, infatti su foglio di calcolo funziona alla perfezione. Il mio dubbio è che la sintassi che io ho inserito nel calcolatore dei campi in QGIS non l'abbia io, inserita correttamente.
Grazie
Sergio
Avatar utente
Antonio
SuperUtente
Messaggi: 887
Iscritto il: 19/08/2013, 21:33

27/03/2018, 16:03

Ho capito, ma una formula corretta in Excel va tradotta in modo corretto per Qgis, pertanto credo che l'espressione condizionale sia al 99% la via giusta, fidati :-bd
Rispondi