

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# OPERAZIONE\_BOOLEANA
<a name="recipe-actions.BOOLEAN_OPERATION"></a>

Crea una nuova colonna, in base al risultato della condizione logica IF. Restituisce il valore vero se l'espressione booleana è vera, il valore falso se l'espressione booleana è falsa o restituisce un valore personalizzato.

**Parameters**
+ `trueValueExpression`— Risultato quando viene soddisfatta la condizione.
+ `falseValueExpression`— Risultato quando la condizione non è soddisfatta.
+ `valueExpression`— Condizione booleana.
+ `withExpressions`— Configurazione per risultati aggregati.
+ `targetColumn`: un nome per la nuova colonna creata.

È possibile utilizzare valori costanti, riferimenti di colonna e risultati aggregati in trueValueExpression, false ValueExpression e ValueExpression.

**Example Esempio: valori costanti**  
Valori che rimangono invariati, come un numero o una frase.  
  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "BOOLEAN_OPERATION",
      "Parameters": {
        "trueValueExpression": "It is true.",
        "falseValueExpression": "It is false.",
        "valueExpression": "`column.1` < 2000",
        "targetColumn": "result.column"
      }
    }
  }
}
```

**Example Esempio: riferimenti alle colonne**  
Valori che sono colonne nel set di dati.  
  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "BOOLEAN_OPERATION",
      "Parameters": {
        "trueValueExpression": "`column.2`",
        "falseValueExpression": "`column.3`",
        "valueExpression": "`column.1` < `column.4`",
        "targetColumn": "result.column"
      }
    }
  }
}
```

**Example Esempio: risultati aggregati**  
Valori calcolati da funzioni aggregate. Una funzione di aggregazione esegue un calcolo su una colonna e restituisce un singolo valore.  
  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "BOOLEAN_OPERATION",
      "Parameters": {
        "trueValueExpression": "`:mincolumn.2`",
        "falseValueExpression": "`:maxcolumn.3`",
        "valueExpression": "`column.1` < `:avgcolumn.4`",
        "withExpressions": "[{\"name\":\"mincolumn.2\",\"value\":\"min(`column.2`)\",\"type\":\"aggregate\"},{\"name\":\"maxcolumn.3\",\"value\":\"max(`column.3`)\",\"type\":\"aggregate\"},{\"name\":\"avgcolumn.4\",\"value\":\"avg(`column.4`)\",\"type\":\"aggregate\"}]",
        "targetColumn": "result.column"
      }
    }
  }
}
```
Gli utenti devono convertire il codice JSON in una stringa tramite escape.  
Nota che i nomi dei parametri in true ValueExpressionValueExpression, false e valueExpression devono corrispondere ai nomi in withExpressions. Per utilizzare i risultati aggregati di alcune colonne, è necessario creare i relativi parametri e fornire le funzioni di aggregazione.

**Example Esempio:**  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "BOOLEAN_OPERATION",
      "Parameters": {
        "trueValueExpression": "It is true.",
        "falseValueExpression": "It is false.",
        "valueExpression": "`column.1` < 2000",
        "targetColumn": "result.column"
      }
    }
  }
}
```

**Example Esempio: and/or**  
È possibile utilizzare and e/o per combinare più condizioni.  
  

```
{
  "RecipeStep": {
    "Action": {
      "Operation": "BOOLEAN_OPERATION",
      "Parameters": {
        "trueValueExpression": "It is true.",
        "falseValueExpression": "It is false.",
        "valueExpression": "`column.1` < 2000 and `column.2` >= `column.3",
        "targetColumn": "result.column"
      }
    }
  }
}
{
  "RecipeStep": {
    "Action": {
      "Operation": "BOOLEAN_OPERATION",
      "Parameters": {
        "trueValueExpression": "`column.4`",
        "falseValueExpression": "`column.5`",
        "valueExpression": "startsWith(`column1`, 'value1') or endsWith(`column2`, 'value2')",
        "targetColumn": "result.column"
      }
    }
  }
}
```

## Funzioni aggregate valide
<a name="valid-aggregate-functions"></a>

La tabella seguente mostra tutte le funzioni aggregate valide che possono essere utilizzate in un'operazione booleana.



- ** Numerico **
  - **Condizione:** Somma / **ValueExpression:** `:sum.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "sum.column.1",<br />      "value": "sum(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la somma di `column.1`
  - **Condizione:** Media / **ValueExpression:** `:mean.column.1` / **Con Expressions:**  <pre>[<br />   {    <br />      "name": "mean.column.1",    <br />      "value": "avg(`column.1`)",    <br />      "type": "aggregate"  <br />   }<br />]</pre>  / **Valore restituito:** Restituisce la media di `column.1`
  - **Condizione:** Deviazione media assoluta / **ValueExpression:** `:deviazione assoluta media.column.1` / **Con Expressions:**  <pre>[<br />   {    <br />      "name": "meanabsolutedeviation.column.1",<br />      "value": "mean_absolute_deviation(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la deviazione media assoluta di `column.1`
  - **Condizione:** Mediana / **ValueExpression:** `:median.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "median.column.1",<br />      "value": "median(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la mediana di `column.1`
  - **Condizione:** Prodotto / **ValueExpression:** `:product.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "product.column.1",<br />      "value": "product(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il prodotto di `column.1`
  - **Condizione:** Deviazione standard / **ValueExpression:** `:standarddeviation.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "standarddeviation.column.1",<br />      "value": "stddev(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la deviazione standard di `column.1`
  - **Condizione:** Varianza / **ValueExpression:** `:variance.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "variance.column.1",<br />      "value": "variance(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la varianza di `column.1`
  - **Condizione:** Errore standard di media / **ValueExpression:** `:standarderrorofmean.column.1` / **Con Expressions:**  <pre>[<br />   {<br />   "name": "standarderrorofmean.column.1",<br />   "value": "standard_error_of_mean(`column.1`)",<br />   "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce l'errore standard della media di `column.1`
  - **Condizione:** Asimmetria / **ValueExpression:** `:skewness.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "skewness.column.1",<br />      "value": "skewness(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce l'asimmetria di `column.1`
  - **Condizione:** Curtosi / **ValueExpression:** `:curtosis.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "kurtosis.column.1",<br />      "value": "kurtosis(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce la curtosi di `column.1`

- ** Datetime/Numeric/Text **
  - **Condizione:** Conteggio / **ValueExpression:** `:count.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il numero totale di righe in `column.1`
  - **Condizione:** Conteggio distinto / **ValueExpression:** `:countdistinct.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "count.column.1",<br />      "value": "count(distinct `column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il numero totale di righe distinte in `column.1`
  - **Condizione:** Min / **ValueExpression:** `:min.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "min.column.1",<br />      "value": "min(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il valore minimo di `column.1`
  - **Condizione:** Max / **ValueExpression:** `:max.column.1` / **Con Expressions:**  <pre>[<br />   {<br />      "name": "max.column.1",<br />      "value": "max(`column.1`)",<br />      "type": "aggregate"<br />   }<br />]</pre>  / **Valore restituito:** Restituisce il valore massimo di `column.1`



## Condizioni valide in una ValueExpression
<a name="valid-conditions-table"></a>

La tabella seguente mostra le condizioni supportate e le espressioni di valore che è possibile utilizzare.



- ** Stringa **
  - **Condizione:** Contiene / **ValueExpression:** contiene (`colonna`, 'testo') / **Description:** Condizione per verificare se il valore nella colonna contiene testo
  - **Condizione:** Non contiene / **ValueExpression:** \! contiene (`colonna`, 'testo') / **Description:** Condizione per verificare se il valore nella colonna non contiene testo
  - **Condizione:** Corrispondenze / **ValueExpression:** match (`column`, 'pattern') / **Description:** Condizione per verificare se il valore nella colonna corrisponde al modello
  - **Condizione:** Non corrisponde / **ValueExpression:** \! corrispondenze (`colonna`, 'modello') / **Description:** Condizione per verificare se il valore nella colonna non corrisponde al modello
  - **Condizione:** Inizia con / **ValueExpression:** startsWith (`column`, 'text') / **Description:** Condizione per verificare se il valore nella colonna inizia con testo
  - **Condizione:** Non inizia con / **ValueExpression:** \! startsWith (`column`, 'text') / **Description:** Condizione per verificare se il valore nella colonna non inizia con il testo
  - **Condizione:** Ends with / **ValueExpression:** EndsWith (`column`, 'text') / **Description:** Condizione per verificare se il valore nella colonna termina con testo
  - **Condizione:** Non termina con / **ValueExpression:** \! EndsWith (`colonna`, 'testo') / **Description:** Condizione per verificare se il valore nella colonna non termina con il testo

- ** Numerico **
  - **Condizione:** Less than / **ValueExpression:** `colonna` < numero / **Description:** Condizione per verificare se il valore nella colonna è inferiore al numero
  - **Condizione:** Minore o uguale a / **ValueExpression:** `colonna` <= numero / **Description:** Condizione per verificare se il valore nella colonna è minore o uguale al numero
  - **Condizione:** Greater than / **ValueExpression:** `colonna` > numero / **Description:** Condizione per verificare se il valore nella colonna è maggiore del numero
  - **Condizione:** Maggiore o uguale a / **ValueExpression:** `colonna` >= numero / **Description:** Condizione per verificare se il valore nella colonna è maggiore o uguale al numero
  - **Condizione:** È compreso tra / **ValueExpression:** isBetween (`column`, minNumber, maxNumber) / **Description:** Condizione per verificare se il valore nella colonna è compreso tra minNumber e maxNumber
  - **Condizione:** Non è compreso tra / **ValueExpression:** \! isBetween (`column`, minNumber, maxNumber) / **Description:** Condizione per verificare se il valore nella colonna non è compreso tra minNumber e maxNumber

- ** Booleano **
  - **Condizione:** È vero / **ValueExpression:** `column` = VERO / **Description:** Condizione per verificare se il valore nella colonna è booleano TRUE
  - **Condizione:** È falso / **ValueExpression:** `column` = FALSE / **Description:** Condizione per verificare se il valore nella colonna è booleano FALSE

- ** Date/Timestamp **
  - **Condizione:** Prima di / **ValueExpression:** `colonna` < 'data' / **Description:** Condizione per verificare se il valore nella colonna è precedente alla data
  - **Condizione:** Anteriore o uguale a / **ValueExpression:** `colonna` <= 'data' / **Description:** Condizione per verificare se il valore nella colonna è precedente o uguale alla data
  - **Condizione:** Più tardi di / **ValueExpression:** `colonna` > 'data' / **Description:** Condizione per verificare se il valore nella colonna è successivo alla data
  - **Condizione:** Più tardi o uguale a / **ValueExpression:** `colonna` >= 'data' / **Description:** Condizione per verificare se il valore nella colonna è successivo o uguale alla data

- ** String/Numeric/Date/Timestamp **
  - **Condizione:** È esattamente / **ValueExpression:** `column` = 'valore' / **Description:** Condizione per verificare se il valore nella colonna è esattamente il valore
  - **Condizione:** Is not (Non è) / **ValueExpression:** `colonna`\! = 'valore' / **Description:** Condizione per verificare se il valore nella colonna non è un valore
  - **Condizione:** Manca / **ValueExpression:** Manca (`colonna`) / **Description:** Condizione per verificare se manca il valore nella colonna
  - **Condizione:** Non manca / **ValueExpression:** \! manca (`colonna`) / **Description:** Condizione per verificare se il valore nella colonna non manca
  - **Condizione:** È valido / **ValueExpression:** isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna è valido (il valore è di tipo dati o può essere convertito in tipo di dati)
  - **Condizione:** Non è valido / **ValueExpression:** \! isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna non è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

- ** Annidato **
  - **Condizione:** Manca / **ValueExpression:** Manca (`colonna`) / **Description:** Condizione per verificare se manca il valore nella colonna
  - **Condizione:** Non manca / **ValueExpression:** \! manca (`colonna`) / **Description:** Condizione per verificare se il valore nella colonna non manca
  - **Condizione:** È valido / **ValueExpression:** isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna è valido (il valore è di tipo dati o può essere convertito in tipo di dati)
  - **Condizione:** Non è valido / **ValueExpression:** \! isValid (`column`, tipo di dati) / **Description:** Condizione per verificare se il valore nella colonna non è valido (il valore è di tipo dati o può essere convertito in tipo di dati)

