Jump to content

join dal comportamento anomalo


Recommended Posts

volevo allegare un esempio di join left outer che forza a None il valore delle variabili aggiunte - vedete in particolare AMDA004 - ma non ho potuto farlo perchè il file è di 400 mega

come posso trasferirvelo?

il comportamento non è sistematico ma come potete immaginare in flussi complessi quali sono quelli con cui lavoro che hanno diverse decine di join provoca danni inenarrabili

per cortesia ho un disperato bisogno di aiuto per venirne fuori

grazie

PS ovviamente sono allineato all'ultima release

Link to comment
Share on other sites

Hi,

If I understand correctly, you are wondering why, for example, there are empty values for the AMDA004 attribute in the results of the Join task.

That is due to the data contents of the two datasets (left and right), and how the task has been configured.

In particular, we can observe the configuration at these points:

image.png

The "Left outer join" Join type will enforce the behavior explained in the documentation at https://doc.rulex.ai/docs/v12/factory/tasks/preprocessing/join.html

  • Left outer join: the final dataset includes all the records from the dataset on the left even if the join condition does not find matching records in the right dataset. If a row in the left-hand table does not match any row in the right-hand table the columns relative to the right-hand table will display empty cells.

This means that if IDCENTRO and IDANA do not match respectively IdCentro and IdAna, then "the columns relative to the right-hand table will display empty cells". Thus AMDA004, which is on the right dataset, will contain empty cells for such rows.

It is the case that some rows do not match between the two datasets for those attributes. For instance, notice how in the results AMDA004 is empty for IdCentro equal to 151 and IdAna equal to 2. As a matter of fact, if you inspect the right dataset and look for IDCENTRO equal to 151 and IDANA equal to 2, you will not find any rows.

image.png

If you wish to obtain a different behavior depending on your needs, you could modify the Join type or other options accordingly. For more information on the Join task and its options, take a look at our documentation here: https://doc.rulex.ai/docs/v12/factory/tasks/preprocessing/join.html

Let us know if you were referring to this problem and if you have other doubts.

image.png

Link to comment
Share on other sites

grazie 

la tua risposta mi ha fatto capire che il problema è la scomparsa di alcune righe che invece dovrebbero essere presenti nella tabella di sinistra: in effetti sono 530 su 1980

La scomparsa è dovuta ad una import from task che se rieseguita ora importa le 1980 righe .... mentre eseguita nel batch se ne è perse 530 ...

Grazie ancora vado a cercare di caratterizzare questo problema

Link to comment
Share on other sites

Non ho trovato risposte per il malfunzionamento di quella import from task e di numerose altre che però rieseguite hanno tutte dato esito corretto

Ripercorrendo il processo di calcolo mi sono comunque accorto che la "left outer join" ha un comportamento diverso da quello che aveva in R4 a fronte di casi particolari come la presenza a destra di una chiave assente nella tabella di sinistra ..... ma non sono  riuscito a capire qual'è la diversità perchè non ho più la R4 e quindi non posso fare una analisi comparativa sulla singola join ma solo sul risultato finale di un processo molto complesso (400 datamanager, 200 join ecc)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...