Tableauの2つのHyperの中身が全く同じであることを確認する

元々、Tableau prepを使っていて、最近prepのUpdateをしたので、古いバージョンで作成したフローを、新しいバージョンのprepで実行したいとします。その時出来上がったHyperの中身が、全く同じかどうかを確認したいとします。カラム数は数百あるとします。

この確認について私は、Tableauでは思い当たらないが、それ以外の方法ならいくつかありそうなので、挙げてみます。基本は、SQLでいうところのUNION ALLして、DISTINCTしたときにレコード数が、元のデータ1つ分になれば良さそうである。カラムが少なければ、すべてのカラムをキーにしてJOINする系の方針でもいいかもしれません。

CSVにして、Linuxまたはmacで確認する場合

  cat file1.csv file2.csv               | wc -l
  cat file1.csv file2.csv | sort | uniq | wc -l

この出力が同じになれば良さそうです。Windowsの場合、PowerShellでGet-Uniqueというコマンドがあるようなので、同様のことができるかもしれない。これだけのために、VBAマクロを書いたりはしたくないです...。

同じことをRだと

dplyr::union_all(df1, df2) %>%                nrow()
dplyr::union_all(df1, df2) %>% distinct() %>% nrow()

こうでしょうか。dplyrのdistinct関数は公式ドキュメントによれば、'If omitted, will use all variables.'とのことです。Pythonでもできると思います。


Tableauでやる、美しい方法を知っている人は是非教えて欲しいです。 コメント欄などで是非お願いします!