Comment comparer deux dataframe et imprimer les colonnes qui sont différents en scala
Nous avons deux trames de données ici:
attendus dataframe:
+------+---------+--------+----------+-------+--------+
|emp_id| emp_city|emp_name| emp_phone|emp_sal|emp_site|
+------+---------+--------+----------+-------+--------+
| 3| Chennai| rahman|9848022330| 45000|SanRamon|
| 1|Hyderabad| ram|9848022338| 50000| SF|
| 2|Hyderabad| robin|9848022339| 40000| LA|
| 4| sanjose| romin|9848022331| 45123|SanRamon|
+------+---------+--------+----------+-------+--------+
et les données réelles cadre:
+------+---------+--------+----------+-------+--------+
|emp_id| emp_city|emp_name| emp_phone|emp_sal|emp_site|
+------+---------+--------+----------+-------+--------+
| 3| Chennai| rahman|9848022330| 45000|SanRamon|
| 1|Hyderabad| ram|9848022338| 50000| SF|
| 2|Hyderabad| robin|9848022339| 40000| LA|
| 4| sanjose| romino|9848022331| 45123|SanRamon|
+------+---------+--------+----------+-------+--------+
la différence entre les deux dataframes est maintenant:
+------+--------+--------+----------+-------+--------+
|emp_id|emp_city|emp_name| emp_phone|emp_sal|emp_site|
+------+--------+--------+----------+-------+--------+
| 4| sanjose| romino|9848022331| 45123|SanRamon|
+------+--------+--------+----------+-------+--------+
Nous utilisons l'exception de la fonction de df1.à l'exception de(df2), mais le problème est, il retourne l'ensemble de lignes qui sont différents. Ce que nous voulons, c'est de voir que les colonnes qui sont différentes à l'intérieur de cette ligne (dans ce cas, "romin" et "romino" à partir de "emp_name" sont différents). Nous avons eu beaucoup de difficultés avec elle et toute aide serait super.
- Jointure interne et de garder les deux emp_name et supprimer toutes les lignes où les deux sont les mêmes.
- Pouvez-vous faire des hypothèses sur les données? par exemple, pouvez-vous supposer emp_id est-il unique? ou encore mieux, doit être la même et que la validation de ses données est-elle pertinente? sinon, pourquoi est-ce une ligne différente dans emp_name et pas complètement différents l'un de l'autre emp_id
- Question similaire, stackoverflow.com/questions/44807450/...
Vous devez vous connecter pour publier un commentaire.
Du scénario décrit dans la question ci-dessus, il semble que la différence trouvée entre les colonnes et pas de lignes.
Donc, pour ce faire nous avons besoin d'appliquer sélective différence ici, qui va nous fournir les colonnes qui ont des valeurs différentes, ainsi que les valeurs.
Maintenant, pour appliquer sélective différence, nous avons à écrire du code à quelque chose comme ceci:
Nous avons d'abord besoin de trouver les colonnes prévues et réelles dataframes.
Alors nous devons trouver de différence columnwise.
Enfin nous avons besoin de trouver les colonnes qui contient des valeurs différentes.
Et, nous aurons seulement les colonnes qui contient des valeurs différentes. Comme ceci:
J'espère que cela aide!
columns.map
- je en boucle à travers le tableau de csv en-têtes.