Rimuovere righe duplicate

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.

Rimuove le righe duplicate da un 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 Remove Duplicate Rows (Rimuovi righe duplicate) in Machine Learning Studio (versione classica) per rimuovere potenziali duplicati da un set di dati.

Si supponga, ad esempio, che i dati siano simili ai seguenti e rappresentino più record per i pazienti.

PatientID Iniziali Sesso Età Ammesso
1 F.M. M 53 Gen
2 F.A.M. M 53 Gen
3 F.A.M. M 24 Gen
3 F.M. M 24 Feb
4 F.M. M 23 Feb
F.M. M 23
5 F.A.M. M 53

Ovviamente, in questo esempio sono presenti più colonne con dati potenzialmente duplicati. Il fatto che siano effettivamente duplicati dipende dalla conoscenza dei dati.

  • Ad esempio, si potrebbe sapere che molti pazienti hanno lo stesso nome. Non è possibile eliminare i duplicati usando colonne name, ma solo la colonna ID . In questo modo, vengono filtrate solo le righe con valori ID duplicati, indipendentemente dal fatto che i pazienti hanno lo stesso nome o meno.

  • In alternativa, è possibile decidere di consentire duplicati nel campo ID e usare un'altra combinazione di filed per trovare record univoci, ad esempio nome, cognome, età e sesso.

Per impostare i criteri per indicare se una riga è duplicata o meno, specificare una singola colonna o un set di colonne da utilizzare come chiavi. Due righe vengono considerate duplicate solo quando i valori in tutte le colonne chiave sono uguali.

Quando si esegue il modulo, viene creato un set di dati candidato e viene restituito un set di righe senza duplicati nel set di colonne specificato.

Importante

Il set di dati di origine non viene modificato. questo modulo crea un nuovo set di dati filtrato per escludere i duplicati, in base ai criteri specificati.

Come usare Rimuovi righe duplicate

  1. Aggiungere il modulo all'esperimento. È possibile trovare il modulo Remove Duplicate Rows (Rimuovi righe duplicate) in Data Transformation, Manipulation (Trasformazione dati, Manipolazione).

  2. Connessione set di dati in cui si desidera verificare la presenza di righe duplicate.

  3. Nel riquadro Proprietà , in Espressione filtro di selezione colonna chiave, fare clic su Avvia selettore di colonna per scegliere le colonne da usare per l'identificazione dei duplicati.

    In questo contesto, Key non significa un identificatore univoco. Tutte le colonne selezionate usando il selettore di colonna vengono designate come colonne chiave. Tutte le colonne non selezionate sono considerate colonne non chiave. La combinazione di colonne selezionate come chiavi determina l'univocità dei record. Può essere definita come un'SQL che usa più join di uguaglianza.

    Esempi:

    • "I want to ensure that IDs are unique" (Gli ID sono univoci): scegliere solo la colonna ID.
    • "I want to ensure that the combination of first name, last name, and ID is unique" (La combinazione di nome, cognome e ID è univoca): selezionare tutte e tre le colonne.
  4. Usare la casella di controllo Mantieni prima riga duplicata per indicare la riga da restituire quando vengono trovati duplicati:

    • Se questa opzione è selezionata, viene restituita la prima riga e altre righe vengono rimosse.
    • Se si deseleziona questa opzione, l'ultima riga duplicata viene mantenuta nei risultati e altre righe vengono rimosse.

    Per informazioni su come vengono gestiti i valori non consentiti, vedere la sezione Note tecniche.

  5. Eseguire l'esperimento oppure fare clic sul modulo e selezionare Run Selected (Esegui selezionato).

  6. Per esaminare i risultati, fare clic con il pulsante destro del mouse sul modulo, scegliere Set di dati risultati e fare clic su Visualizza.

Suggerimento

Se i risultati sono difficili da comprendere o se si desidera escludere alcune colonne dalla considerazione, è possibile rimuovere le colonne usando il modulo Select Columns in Dataset .

Esempio

Per esempi di come viene usato questo modulo, vedere il Azure AI Gallery:

  • Rilevamento del seno:remove Duplicate Rows viene usato per consolidare i set di dati di training e di test dopo l'aggiunta di colonne di caratteristiche.

  • Raccomandazione per i film: usa Rimuovi righe duplicate per assicurarsi che sia presente una sola classificazione utente per film.

  • Analisi del sentiment di Twitter: Remove Duplicate Rows viene applicato solo alle colonne ID e popularity, per garantire che sia presente un solo valore di rango ordinale per film. In altre parole, un film non può essere sia il primo che il terzo, quindi viene usato un singolo valore anche se gli utenti hanno classificato il film in modo diverso.

Note tecniche

Questa sezione contiene informazioni dettagliate sull'implementazione, suggerimenti e risposte alle domande frequenti.

Dettagli dell'implementazione

Il funzionamento del modulo si basa sulla creazione di un ciclo in tutte le righe del set di dati di input. Raccoglie in un set di dati di output candidato tutte le righe in cui viene visualizzata per la prima volta la combinazione univoca di valori di colonna chiave.

Il tipo di matrice delle colonne viene conservato indipendentemente dai risultati del filtro di riga. Non è possibile applicare la matrice a un particolare tipo di dati filtrando i valori non validi. Il tipo di matrice di una colonna si basa su tutti i valori nella colonna. Questa restrizione si applica anche quando si filtrano i valori mancanti.

L'algoritmo usato per confrontare i valori dei dati viene applicato dall'hash.

Valori mancanti

Il set di dati di input potrebbe avere valori mancanti nelle colonne non chiave e nelle colonne chiave. Queste regole si applicano ai valori mancanti:

  • Un valore mancante viene considerato un valore valido nelle colonne chiave. I valori mancanti possono essere presenti in entrambe le chiavi.

  • In un set di dati di tipo sparse il valore mancante viene considerato uguale solo se è uguale alla rappresentazione predefinita di un valore di tipo sparse.

  • Nelle colonne chiave un valore mancante viene considerato uguale ad altri valori mancanti, ma non uguale ai valori non mancanti.

Input previsto

Nome Tipo Descrizione
Set di dati Tabella dati Set di dati di input

Parametri del modulo

Nome Intervallo Type Predefinito Descrizione
Key column selection filter expression any ColumnSelection Scegliere le colonne chiave da usare durante la ricerca di duplicati.
Retain first duplicate row any Boolean true Indica se mantenere la prima riga di un set di duplicati e ignorare le altre. Se False, viene mantenuta l'ultima riga duplicata rilevata.

Output

Nome Tipo Descrizione
Set di dati di risultati Tabella dati Set di dati filtrato

Eccezioni

Eccezione Descrizione
Errore 0003 Si verifica un'eccezione se uno o più set di dati di input sono Null o vuoti.
Errore 0020 Si verifica un'eccezione se il numero di colonne in alcuni set di dati passati al modulo è troppo piccolo.
Errore 0017 Si verifica un'eccezione se una o più colonne specificate dispongono di un tipo non supportato dal modulo corrente.

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

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

Vedi anche

Manipolazione
Elenco moduli A-Z