Unire dati

Importante

Il supporto dello studio di Azure Machine Learning (versione classica) terminerà il 31 agosto 2024. È consigliabile passare ad Azure Machine Learning entro tale data.

A partire dal 1° dicembre 2021 non sarà possibile creare nuove risorse dello studio di Azure Machine Learning (versione classica). Fino al 31 agosto 2024 sarà possibile continuare a usare le risorse dello studio di Azure Machine Learning (versione classica).

La documentazione relativa allo studio di Machine Learning (versione classica) è in fase di ritiro e potrebbe non essere aggiornata in futuro.

Unisce due set di dati

Categoria: Trasformazione/Manipolazione dei dati

Nota

Si applica a: Machine Learning Studio (versione classica)

Nella finestra di progettazione sono disponibili moduli simili Azure Machine Learning trascinamento della selezione.

Panoramica del modulo

Questo articolo descrive come usare il modulo Join Data in Machine Learning Studio (versione classica) per unire due set di dati usando un'operazione di join di tipo database.

Per eseguire un join su due set di dati, è necessario che siano correlati da una singola colonna chiave. Le chiavi composte non sono supportate.

Come configurare l'aggiunta di dati

  1. In Machine Learning Studio (versione classica) aggiungere i set di dati da combinare e quindi trascinare il modulo Join Data (Unisci dati) nell'esperimento.

    È possibile trovare il modulo nella categoria Trasformazione dati in Manipolazione.

  2. Connessione i set di dati al modulo Join Data (Unisci dati).

    Il modulo Join Data non supporta un right outer join, quindi se si vuole assicurarsi che le righe di un determinato set di dati siano incluse nell'output, tale set di dati deve essere incluso nell'input a sinistra.

  3. Fare clic su Launch column selector (Avvia selettore di colonna) per scegliere una singola colonna chiave per il set di dati nell'input a sinistra.

  4. Fare clic su Launch column selector (Avvia selettore di colonna) per scegliere una singola colonna chiave per il set di dati nell'input a destra.

  5. Selezionare l'opzione Maiuscole/minuscole se si sta unendo in join una colonna di testo e si vuole assicurarsi che il join manterti la distinzione tra maiuscole e minuscole.

    Ad esempio, se si seleziona questa opzione, A1000 verrà considerato un valore di chiave diverso da a1000.

    Se si deseleziona questa opzione, la distinzione traA1000 maiuscole e minuscole non viene applicata e verrà considerata come a1000.

  6. Usare l'elenco a discesa Tipo di join per specificare la modalità di combinazione dei set di dati. Tipi:

    • Inner join: una inner join è la tipica operazione di join. Restituisce le righe combinate solo quando i valori delle colonne chiave corrispondono.

    • Left Outer Join: un left outer join restituisce le righe unite in join per tutte le righe della tabella di sinistra. Quando una riga nella tabella di sinistra non ha righe corrispondenti nella tabella di destra, la riga restituita contiene i valori mancanti per tutte le colonne provenienti dalla tabella di destra, se non si specifica un valore sostitutivo per i valori mancanti.

    • Full Outer Join: un full outer join restituisce tutte le righe dalla tabella di sinistra (table1) e dalla tabella di destra (table2).

      Per ogni riga della tabella di sinistra che non contiene righe corrispondenti nella tabella di destra, i risultati del join includono una riga contenente i valori mancanti della tabella di destra.

      Per ogni riga della tabella di destra senza righe corrispondenti nella tabella di sinistra, i risultati del join includono una riga contenente valori mancanti per tutte le colonne della tabella di sinistra.

    • Left Semi-Join: un semi join a sinistra restituisce solo i valori della tabella di sinistra quando i valori delle colonne chiave corrispondono.

  7. Per l'opzione Mantieni colonne chiave destra nella tabella unita in join:

    • Deselezionare l'opzione per ottenere una singola colonna chiave nei risultati.
    • Lasciare selezionata l'opzione per visualizzare le chiavi da entrambe le tabelle di input.
  8. Eseguire l'esperimento oppure selezionare il modulo Join Data (Unisci dati) e selezionare Run Selected (Esegui selezionato) per eseguire il join.

  9. Per visualizzare i risultati, fare clic con il pulsante destro del mouse sul modulo Join Data (Unisci dati ), selezionare Results dataset (Set di dati risultati) e fare clic su Visualize (Visualizza).

Esempio

È possibile visualizzare esempi di come viene usato questo modulo nel Azure AI Gallery:

Note tecniche

Questa sezione descrive i dettagli dell'implementazione e le risposte ad alcune domande frequenti.

Restrizioni

  • Il set di dati combinato non può contenere due colonne con lo stesso nome. Se i set di dati sinistro e destro hanno nomi di colonna duplicati, viene aggiunto un suffisso numerico ai nomi di colonna del set di dati corretto per renderli univoci.

    Ad esempio, se entrambi i set di dati hanno una colonna denominata Month, la colonna del set di dati a sinistra rimarrà invariata e la colonna del set di dati di destra verrà rinominata Mese (1).

  • L'algoritmo usato per confrontare i valori chiave viene applicato dall'hash.

  • Ogni colonna del set di dati unito mantiene un tipo categorico, se la colonna corrispondente del set di dati di input è categorica.

  • Nei left outer join, in caso di valori mancanti, viene creato un livello categorico per i valori mancanti nel set di dati di sinistra. Questo si verifica anche se non sono presenti valori mancanti nel set di dati unito di destra.

Come è possibile creare un join di una tabella in una chiave composta?

Se è necessario creare un join di una tabella che usa chiavi composte, ovvero la chiave primaria si basa su due colonne indipendenti, usare un modulo simile al seguente per concatenare il contenuto delle due colonne chiave:

  • Execute R Script (Esegui script R)

    Ad esempio, usare codice come quello riportato all'interno dello script R per concatenare la prima e la seconda colonna del frame di dati di input usando un trattino come separatore. paste(inputdf$Col1,inputdf$Col2,sep="-")

  • Apply SQL Transformation (Applica trasformazione SQL)

    L'operatore di concatenazione in SQLite è ||.

Come è possibile creare un join di tabelle che non hanno una chiave?

Se il set di dati non ha una colonna chiave, è comunque possibile combinarlo con un altro set di dati, generando una chiave o usando il modulo Aggiungi colonne.

Il modulo Add Columns si comporta come R e può unire due set di dati riga per riga, se i set di dati hanno lo stesso numero di righe. Se i set di dati hanno dimensioni diverse, viene generato un errore.

Input previsti

Nome Tipo Descrizione
Dataset1 Tabella dati Primo set di dati da unire
Dataset2 Tabella dati Secondo set di dati da unire

Parametri del modulo

Nome Intervallo Type Predefinito Descrizione
Join key columns for L Qualsiasi ColumnSelection Selezionare le colonne chiave di join per il primo set di dati.
Join key columns for R Qualsiasi ColumnSelection Selezionare le colonne chiave di join per il secondo set di dati.
Maiuscole/minuscole Qualsiasi Boolean True Indica se è consentito un confronto tra maiuscole e minuscole nelle colonne chiave.
Tipo di join Elenco Tipo Inner join Scegliere un tipo di join.
Keep right key columns in joined table Qualsiasi Boolean True Indica se mantenere le colonne chiave del secondo set di dati nel set di dati unito.

Output

Nome Tipo Descrizione
Set di dati di risultati Tabella dati Risultato dell'operazione di join

Eccezioni

Eccezione Descrizione
Errore 0001 Si verifica un'eccezione se non è possibile trovare una o più colonne specificate del set di dati.
Errore 0003 Si verifica un'eccezione se uno o più input sono Null o vuoti.
Errore 0006 Si verifica un'eccezione se il parametro è superiore o uguale al valore specificato.
Errore 0016 Si verifica un'eccezione se i tipi di colonna dei set di dati di input passati al modulo che dovrebbero essere compatibili non lo sono.
Errore 0017 Si verifica un'eccezione se una o più colonne specificate dispongono di tipi non supportati dal modulo corrente.
Errore 0020 Si verifica un'eccezione se il numero di colonne in alcuni set di dati passati al modulo è troppo piccolo.
Errore 0028 Si verifica un'eccezione nel caso in cui un set di colonne includa nomi di colonne duplicati, che non sono consentiti.
Errore 0011 Si verifica un'eccezione se l'argomento del set di colonne passato non è applicabile ad alcuna colonna del set di dati.
Errore 0027 Si verifica un'eccezione quando due oggetti che dovrebbero essere delle stesse dimensioni sono differenti.

Per un elenco degli errori specifici dei moduli di Studio (versione classica), vedere Machine Learning codici di errore.

Per un elenco delle eccezioni API, vedere Machine Learning di errore dell'API REST.

Vedi anche

Manipolazione
Trasformazioni dei dati
Elenco moduli A-Z