From bf03ec86cf438e2e27d4cf9927394818994bab20 Mon Sep 17 00:00:00 2001 From: fdosani Date: Wed, 30 Oct 2024 18:28:40 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20capitalo?= =?UTF-8?q?ne/datacompy@b23da8ef727987699d6ae2e4fe2973c8946fedda=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .buildinfo | 2 +- .doctrees/environment.pickle | Bin 235044 -> 235018 bytes .doctrees/index.doctree | Bin 219132 -> 219132 bytes .doctrees/snowflake_usage.doctree | Bin 36474 -> 36017 bytes _sources/snowflake_usage.rst.txt | 26 ++++++++------- _static/documentation_options.js | 2 +- api/datacompy.html | 8 ++--- api/datacompy.spark.html | 8 ++--- api/modules.html | 8 ++--- benchmark.html | 8 ++--- developer_instructions.html | 8 ++--- fugue_usage.html | 8 ++--- genindex.html | 8 ++--- index.html | 10 +++--- install.html | 8 ++--- objects.inv | Bin 1827 -> 1827 bytes pandas_usage.html | 8 ++--- polars_usage.html | 8 ++--- py-modindex.html | 8 ++--- search.html | 8 ++--- searchindex.js | 2 +- snowflake_usage.html | 51 ++++++++++++++++++++---------- spark_usage.html | 8 ++--- 23 files changed, 109 insertions(+), 88 deletions(-) diff --git a/.buildinfo b/.buildinfo index 1e8d5263..43ae7a7e 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 1f4b85819b4429b3833c6521f227662a +config: 6c337fb4280de0804707d0f7392a1a76 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index 5a303559dd99936d7c254e04602a3525ecd4124e..f8756417cb99bca6652af97140df7bd57773cb50 100644 GIT binary patch delta 11100 zcmZuXcU+Z6w$6-#lndMoDj)(DY_XuLvC{06OR*OaP*A)opx`PhipE4iRFV%pS!0w` zV>F6;SLYdxC7YPUN}5q)3??sYjD6iCuCcr`<-5Y~<^J)_%xQDx%sFS;eRG#j#V()P zEK2_3%%-(rnV0{~CtdOIO`m}DmPfh;+9hp+@hIAOtA`9^n?&HbBHQ|Mmd?zp5{LjMZ)Z#td6 zywCWePrSQObwhP$BW_?i8E35M+t>K02u=d8e;WLc5IE0UI zNN;d_iFQ_wazoUF7dZYaKEeYWZcXtc9n@dcq=SZwnsm_aq9z@5pr}a)9Vu$kLC1=k zbkJ;3lMb4XwFQ+;iwmX~RW~cG?(9f&+DCREaB~~&;M_Q>rL0+vL-9Y5H0QR2fmC3u z&R>%9G-m9)0O!KwYSn@bO^L-w&+>B)NZqXocHa{aD{L6fY;ZIhnFowMs>vh0CAk&S zFH#E>BoeE0#MqBCqwi|P*gcb34c`*0bISNn%x+c_i!*lOb+cJ0#rQkZC!f>IDOurA z+LDAhSElc4Ocemj0*TGJWa>W^+?kTqRE^3oRb3ZC+B@Hx_NgXVmh(hQEj*x9dM}&= zIX|B9z9y*3`>!TQ$qI$rm#Lo-dBW0V3&emT^l>^Wi95> ze65o4XjQQDdhz!P4)tAecpe{1KL@VpN`gfC9*jy;(5rei!DBrK) z@Asz`XXx7hRZZj0%3#Q}Gi8wEbq%SE(6tt4&kYl`@vHJIaP21=XdFFbb)I?AoVCnP zi4TM%qwj3aLf`q=XygO$Zv0L6D_qHW7_RAlg|zakG!TwZbgEl_)7}VodL!BUujms>a`!Wa4`eWA(aI~n_ejH&>IJyasdWhpiy%h!EeM5d{b!SP+~kC&A7+&f^-sEXVRj>OMVd+5EAVUwA;zDQv(H0E)k8%7JtMh-)>ty1rzxcN9bNLqRbIaXe=iy6w-i#TyJ43jyISr>TyQ~v|a$da~ zERap1(1CMtt^PADXG%%~r1SOn(RZoi&ejU|?bs7V_M;lW4OF7GuLhPk8*0 z`g06EooYBHm#cc*+OD2_s~e%JC%(5i0gVCNth?yv)Lm<{0&OV_5GJ^SL8_@}dX9bYETFk9aEWDs4`9Uj! znAW^BkmxLGAQ}+u!x-6=n1ho+9SDb06C_qQL`3Mmcwi!U-FPa#7u8Ef&B4cqE|3L%Ud{! zA>U}JrQ0oVXBcVDAIG|2qNl&+V(P`EmWK=_dTB9`mLu(CZ5Ir49S|TLVMz+EC$3D& zi{s7Vf^bWa=&~6M9U;-x6$YL{AYW6cx}kln+D>$c8<>VUvYL^N>Aj6yYx&!0#LN*Q ze54p-+rhT{f5s4Ed*>SB!0%> zOE&)e4Dy$SG|HT%COQhJ12c zwK=Nvhwe{A*x|nte~7g*AF*!ni}PLKfpp~Spzg-4U#)!b@`im1Ev+xzZ_CH7Fteb@ zmr6Y5StIO$jZc1##Apl4(B86|*!XA9yRs7+!c*hXeQi*i&ukpmdNWcE1Y$-(rdE*E z3zu<``rInX89kcXV-o2Pw|g<2`MR!m%`=RR4drq(IYoXKZRXr{NIZ*Yw*LUM6Riny?{44Z>fbTNu%+t$f#J zGcGyCyQOG+JY$FSyx-*GE{e9*O&po{3R5!tg1)U4HZ4m@hoh`n+f zxf+Fh=<;Q;zvU$#5xoso*`vIzHc|C)GhjJ7z247(*pTt*CtPijuKCPUE}hvUvB>S<}X}km)q`6C3^j-{)*@gJ0EwBe670)yGVR_!g+K0 zIkvykC~-jI!IwfbI2U6x{iUTK8WeortK}jO$6Ed;%VwRTB!m zX%N)jCvN=0k7TU|7VIV7Q0tB%5cvcHQhKQKC$d$eZ$Bj6_=c+@?Ff-DHvm6{U04Xz zUq?ZQuZd`oomJhn@FUknzL11j{~_3_%})z{rxVJ+QM87dQsyQz-|^oFo;)Ps*88NTBIL&(kXE{iqtH-5N!{R1 zDQgDdkFa;2<*Yei?^c-cg#6u&HX%)#G%@Zbb~0+`dhSc1kKA|qKVc@E=MHi|hwnggdRM0fE@OKQ>8 z_XDYyX2)3roV8}6v*4!*w?k`+>#@`yiF@$yHWb}ZcG#HXX|7EVqqu%b7NMgOC=xEm zje>Rnjt&r@l|bXU=_*bs9ufXTx+}4^=t^-HCn)&O&(Kwh7)(>T@v0uQUUy!$1?{~) zlHSw$qJcOX=#ggM)5okfV6S_Y;t4{EKiJ=8v1WT3s^?dAXl!o3^nHo&~0rXSUKkE%Zg$DNQ&nZ zDS4osb_Pt#VSGwF#Vjs>n?};k9J8{H8;&$OL^!J0LUW?$E5S1R^22Eq?^^^ruNh++ z!br{X2JewL|5>q2?ImuGqj-QZ`|kKO^I9fS+~^C0i%VwT){|+h?h<_;6aEm4u*gcx zb$Fq|x2ID)glMf>LeENECk8#Fcm|tlh75eyA0rI4@Z^&l`ny)P?p1#X8_1gR-Fb8>0o!Rzn>XTG!AlN03c}7( z>!vHX96ol?{Uo06n@vA zdutJ$K{jFT2Obh)lJuM*>uv zqO12d30n$U_~B*x6-nm&Z#0==>9&R9v0Y+%ZlyP2WjSpF;cwG1M%J((cxxMK_QX)e z;?^44l8B~_4|q-JA*&}|r(1P(@td@qz~Uk_^`&9KQ291;Z&;$a@4roLL^N$YUBXB*<*GR_$F+OyY3} z(eT<18puZiTm5|Xit5s8$7OMC zesNHfCPmY-9baRkGB7La&lupDkLbrrEd5waf=~kF_(y&s#xL3&$DgOFYUqPb&?Jre z+eunNz`vdp;B9^oY(9<+M6vO)UV3X+idc!=jbF#()j)JbU-J#?8m&kHh#YmcM15bjD#ni ztPPYA)&f%RQZKlb$wKzkux~pMJ6{^XR)xljClnl_ct62HJf2`7UQVzO&n8%iHxn#` z)vyq+C0GcnVKE9~hq0ug!fNGmBFd#n%B8?^DX(0LE0@yBrLb}-t6YjImy*g+(Ai;Z zG)aSY!`VPAGKRB6`K;#nC*4rq^@`2O^%w5U65Cw5lQ0B7X%qni9Y>=76+)>cokt_v^xKV6~ zqWmEW4%%6Wu{OtQ?9OwCg1O9H3H}M{641D}N1zDttO51eQiL_0#i58X@hk=lBc4TK z@libMjm7WrY$O&j32dkm|3D9JZ9TObQR6MJezX*FGJz$iZkoWhMAi+KtYjX@nU=^# zVX--p4OD0k=rsnH^jnFnC&ELM*eC_}g(qpK9m=&p?T^$GYLb{u^=XTSnrS$AiSt;? zd=*CvSZZfoA#X18K}nHzHUf)<>dSw98n1jo`@ z80d5V<(K?)l}(l({C;fi*!qRmWYT@@fk0p3Vu zZ53dM0_-WndpGfh(A@E3Y?CJVLgQKct9m`Uc5obk%V=elHxWvc%rVs_4gQm^V z(3@kKFLFK_%Z4lD{AhT00opxv3?4MYPq-ZBrEzRH5}qH&hGG#ip2cF3Fl7mL47kUaM$uyNRmpUBd%cx9q&-JQrLVk=>i=^5LU$LyLU z&Gd^4{+5C#O_uPA$!t8bU75@#VKHcm8DD#)Ul|AQwFYsuBjZ60?;p`HXbl=M=?~i4 z2>aa!!qZuEWnQkFF)^KWQMB(XJ3)R1^E7H6d&1d2s0ZA(OW!|~&f*o{Q8n1G4ATw% zsQ?4lF>ffyVC@yzaRuFl0MxZEgN;z|QwknAmDvzJbgJ~Y1yiMCADSxX^$E6=O5aAq z<$Ro-rd^GmeKR#HsE%yKD< zB_L&|Y!;=Y-GiIitcxqDAnx^S=?Fh(v%%Pkm?rg|Fik4Dd74ag7gQ@`y6F#IaAi8{ z1nZ}p`OXLK&cpzHCI@r=phDIHC0&}%`l>zyT*$6U-BvMhc^r;!%p35TOXs%2dXLDIUl;J)@rl`~zY?xy19RsP8 zu#XTAJa(kUi$gWu5}TRs@(k(WU1zdEO6VY=V^2u-!s{k&7s*hnRM3~ZZ*Y&~b;d@E(qgepe7M@ ze9wnjpQaKY2TN3(>5w)HIhXmeP>9A9twxp^gDE5gZuqix=5TH~w-+b&M(t%e=@(LEmrTQw4fh5t{WgF`VVYt*N z@WL3lEx?KX_|922MLK2Qxn{O5h1wz%*Tc&EUb?Rmj_Rij2F_(Y#ETZ39mkq0SgmzbJRAd$Xr18!?qlpI(dy3zJ>+h7_f0FV7o&o>va zWHqwS#RP=HQgQDpE*D*M_gB+G-v}SahwX68bvGwaUvqzP6e(~FWTA|SsD(0FEM6%6 z?Z84Axc3&yn2K2>!(jO$)13c?Wf!j=-|jp!XE zasjk`avcDS;HWndArlx1O2vy`P{@o1?8PASEe&JKF6kDu~rpVpJP)Mb#5%AOhoaOeKD=efVRWSt1znUaBUTvq;$)N zS68tpsC%90BqlYU7ps=A{4(YSc;^(XR#ZD&ejb-ZNwQE4D*6TV4Al4qj5nOO7tmeo z5VBeV(^q4t+To?uEKTuLiq6{0`yY@2WQV?M*jS{gSYsMxW2{>C^2OarsvXaUB4E^r zUe@CuT8^%2hq7{9E2T19pCUTJwtW~+Vuy|-p%u7wu|shMZe8qfx&p&WGQ5in2^f)s z*0Ros$XUzAC`7GB92|#({%jocQDA4R+>XIRp%q^11ginu_f!)%#FTgu(iCEKmVHRxC#mfP@#; z$@S5?p0&Zy>8T34DrT#qTov1~h>{|`a8sMtKd*mzF&@|*al`Pqegi+9)t}&oHNsXm zzyjHTz1Vr!1`H*V0!yoK8=L~Xiam?Pttz&#z5D}Q`{7NRyio1vh=uw`TqgzSDgk`W zi>xz^b^IN#ogKTxXSew55TAF&XS?|95uaM|*(*Nph|hcY$$Q@Mwy5vqcMR5t{vUN8 B?>7Jd delta 11451 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 R^BVu`=AXCNIgLDy{||Oz=tuwn diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree index daa821fa0f5aff39b9f6dc2084f25c12bfdc2788..3aeac601b9e4c19ad974cc0035c102972fdf51f2 100644 GIT binary patch delta 9697 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 delta 6208 zcmd5=Yj9L&8Rk2C$?hhE#MXplH`$X7m!u?tq+A!;6ljVeB%wj>6O+yE31?6C#$KQ) zWD=lZ+_KW(yE^TNT83JtI3SohR;`NTA8i{*+p$$ghol!Po$3fwZLyAimvdWSx%$KW z__F7G&w1bHeb4ipbH4BNGu)NKoN37PweZ2yrpqSeg-=c1!nByvnHKA+_oN5XRia6J z4!)DKADw`TE%)Uv67Ayii5{^iG&fb8hPgofaMm$l0Z|{)=Z=7Ez#1j!E&`nTU==TUyc*tf% zlh9;)0bPP4vx~u;y98Y!GbU2QC8+qK6V`TEP5Jm}5)S7Exk3bow%5Rf+gOl~rc4nX zqCqSZYsB)F!qJwzN2j6+IJ?9NFPF3wILSPlyGOK3`EZfH7v_|%pE{|(3ZBg^M{B=o zFLrcy@ACBw)a{CSMIq?HKjNOAfY2541cd?kU1>8~4qY=!+ski+>+V)MQJOuN)?ulc zl`}rWh@+pj&&A`Uy}sbV%+ekKmt%6; zJ%Z>YimB*Kr^;f=E%mZnS{tUfv^GX>sYk5D5}SEFAkTpCuZmu7uXaZUGih%fJ?i=i zLL<0sE4ioDN^K(;M&;QEldeW6o0&^7rLc159PYS^!zYi-Tp~~XedcWLW&Kq9tY67f z4YQrxS#`>;MmO=EkdN0jn-D35moR)ng_o#sLtV8y13YQ3g>i?apc6M-sVvbW@uS#rz{zPQ#2V}8q2j)=(5&i0ZvE%&j5Ou4jS zEeLob^S(&ZHK(emWER5QR+A#7BqL0vv{06kd~W!f>!obB!VbNCGq@L6t?%QeJg;xc zQGHX0_|9m+pX!@(G@~iclBq?q`eaV8Uc;#>D=9@E7g)9rFs(o7X}znbMMU`@4fq)W zqJ!{y=Y5JUCKxG-LxsDtat2>h*YwdDpXO z7jWK=jJ)moy#I{WaD5t5%*fk*dwCy*6R~3M0E_k^&imzzyu&u9*g9w$ z)CU%r2{6yB7m5z(Ku5WGwXD({<(R1C7k&J+6)i%qr4@0veQd;afV zHtWsWcZ*^w-MI`?$>(p^RA`Xa{|Ro@?u=ITv)t+z5c;|bgzP|UDZHd3%_k9$Q=syg z?l+Uiv|_0pbWX99%>E86h2Em+uHbZUX7C!<7l0jwK2m`fvH=xQ7+_@k0uzZj1rCMP z51(;bfuhu&h#0Plf+V9Z;l+@GYi`aEmm<0vfyM>p>`FyM$gWXqkj$F zBD)Z+^fO#(pFXRoXNO;c=m{0KCkxJjs7ui|ROHiocH-@^W3hfrWBnVm`=LJTi+Xm% z@8c?NEDKJ#vmdC)_w?*ur0f)JjxnXmeqT?HGW^~_^`pK{M@x3T!l8R$@^P~K%7KxD z88zXx%e`>_gQHl^sA^=Gr|kYw#-jaah-CUlHl6|%TN{U*)^xU zy6&ny6seKKBHJoOdSE^Vs{0laUY|2wIjuPeck%(axOdJ}`qM2_f%*Q-}S;(-042@)%MJ}r( zLy!y-9ug@l*=ULPM}!#J(vnF0B#oV`wUBn_0LL6Qlvf?P%ziFuTc zILWw>eImw%Y^yLXWIfNgZQI%*-<;VJCaUs|h6k;*YHX#jZ zIMQA+xO7D#5D?;gz#ohALdX~6clz=AI}ztSd{4j=>ccZ3VJV*o36DkaE}7uNKm8$} z5Q@vPD@xr(jC{Q$bFBD7uFhzej8^=1E+0&p0>Ta{VcSN?_)`XjCX^KYiUZOw5yS!na zP}>s-d;47cpwA!075jGxZd=gvm_L{Z^7XtYx-AjJ)mO!;c~2k^-YNKM`1|=-A`%Js z1)tiKb~WfbLx;7n?+ksDzs0!rs{(7@t)z`wV3&AY7cP&-B2dcPREY0>T^;tIQicfU)uhYlExW#-<*0Ru+<}7}khC9I9bwQ_gZry-Piq1t*;@ z7@uBTMxdUaSXVq8c%WXWoj0Fhs@Y}TpQ|+z1XS=FR+1l)s2{gY-l40D3XyO$UR7Of zlQ$awFNs&(kT|;|`0-M2B^z1}bwf+twPLr3JUZdDzif>nXoDhXQ&UGrdxt9L=IhE? zx@s47GgUMkij@xDjrUZk-noCL;fH`G%T~p|tEqoiU*lh?4C__4ZmR`dzgXqnqP}nN KRxk9XTK)^sy?l}Y diff --git a/_sources/snowflake_usage.rst.txt b/_sources/snowflake_usage.rst.txt index 3c2687e3..9cc2139f 100644 --- a/_sources/snowflake_usage.rst.txt +++ b/_sources/snowflake_usage.rst.txt @@ -6,11 +6,12 @@ For ``SnowflakeCompare`` - ``on_index`` is not supported. - Joining is done using ``EQUAL_NULL`` which is the equality test that is safe for null values. - Compares ``snowflake.snowpark.DataFrame``, which can be provided as either raw Snowflake dataframes -or the as the names of full names of valid snowflake tables, which we will process into Snowpark dataframes. + or as the names of full names of valid snowflake tables, which we will process into Snowpark dataframes. -SnowflakeCompare Object Setup ---------------------------------------------------- +SnowflakeCompare setup +---------------------- + There are two ways to specify input dataframes for ``SnowflakeCompare`` Provide Snowpark dataframes @@ -66,11 +67,12 @@ Provide Snowpark dataframes print(compare.report()) -Provide the full name (``{db}.{schema}.{table_name}``) of valid Snowflake tables -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Provide the full name (``db.schema.table_name``) of valid Snowflake tables +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Given the dataframes from the prior examples... .. code-block:: python + df_1.write.mode("overwrite").save_as_table("toy_table_1") df_2.write.mode("overwrite").save_as_table("toy_table_2") @@ -210,6 +212,7 @@ There are a few convenience methods and attributes available after the compariso print(compare.df2_unq_columns()) # OrderedSet() + Duplicate rows -------------- @@ -260,9 +263,10 @@ as uniquely in the second. Additional considerations ------------------------- -- It is strongly recommended against joining on float columns (or any column with floating point precision). -Columns joining tables are compared on the basis of an exact comparison, therefore if the values comparing -your float columns are not exact, you will likely get unexpected results. -- Case-sensitive columns are only partially supported. We essentially treat case-sensitive -columns as if they are case-insensitive. Therefore you may use case-sensitive columns as long as -you don't have several columns with the same name differentiated only be case sensitivity. + +- It is strongly recommended against joining on float columns or any column with floating point precision. + Columns joining tables are compared on the basis of an exact comparison, therefore if the values + comparing your float columns are not exact, you will likely get unexpected results. +- Case-sensitive columns are only partially supported. We essentially treat case-sensitive columns as + if they are case-insensitive. Therefore you may use case-sensitive columns as long as you don't have several + columns with the same name differentiated only be case sensitivity. diff --git a/_static/documentation_options.js b/_static/documentation_options.js index 061ed0ab..eb0057b4 100644 --- a/_static/documentation_options.js +++ b/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '0.14.2', + VERSION: '0.14.3', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/api/datacompy.html b/api/datacompy.html index f6a913c3..8cab2487 100644 --- a/api/datacompy.html +++ b/api/datacompy.html @@ -6,7 +6,7 @@ - datacompy package - datacompy 0.14.2 documentation + datacompy package - datacompy 0.14.3 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@ -
+
diff --git a/developer_instructions.html b/developer_instructions.html index 912012b0..7d07b87f 100644 --- a/developer_instructions.html +++ b/developer_instructions.html @@ -6,7 +6,7 @@ - Developer Instructions - datacompy 0.14.2 documentation + Developer Instructions - datacompy 0.14.3 documentation @@ -166,7 +166,7 @@
@@ -188,7 +188,7 @@ -
+
diff --git a/index.html b/index.html index 7974bea3..7cbebea0 100644 --- a/index.html +++ b/index.html @@ -6,7 +6,7 @@ - datacompy 0.14.2 documentation + datacompy 0.14.3 documentation @@ -166,7 +166,7 @@
@@ -188,7 +188,7 @@ -
+
diff --git a/search.html b/search.html index 3ac998d7..53873a03 100644 --- a/search.html +++ b/search.html @@ -7,7 +7,7 @@ -Search - datacompy 0.14.2 documentation +Search - datacompy 0.14.3 documentation @@ -166,7 +166,7 @@
diff --git a/searchindex.js b/searchindex.js index 45d291d7..0c33ffbe 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"API Reference": [[6, null]], "Additional considerations": [[10, "additional-considerations"]], "Basic Usage": [[5, "basic-usage"], [9, "basic-usage"]], "Benchmarks": [[3, null]], "Caveats": [[8, "caveats"]], "Caveats and Limitations": [[9, "caveats-and-limitations"]], "Compare Object Setup": [[8, "compare-object-setup"], [9, "compare-object-setup"]], "Contents": [[6, "contents"]], "Contributors": [[6, "contributors"]], "Convenience Methods": [[8, "convenience-methods"], [9, "convenience-methods"], [10, "convenience-methods"], [11, "convenience-methods"]], "Cross Comparing": [[5, "cross-comparing"]], "DataComPy": [[6, null]], "Developer Instructions": [[4, null]], "Duplicate rows": [[8, "duplicate-rows"], [9, "duplicate-rows"], [10, "duplicate-rows"], [11, "duplicate-rows"]], "Fugue Detail": [[5, null]], "Future releases": [[5, "future-releases"]], "Generating Documentation": [[4, "generating-documentation"]], "Generating distribution archives (PyPI)": [[4, "generating-distribution-archives-pypi"]], "How it works": [[5, "how-it-works"]], "Indices and tables": [[6, "indices-and-tables"]], "Installation": [[7, null]], "Installing extras": [[6, "installing-extras"]], "Legacy Spark Deprecation": [[6, "legacy-spark-deprecation"]], "Limitations": [[8, "limitations"]], "Management of Requirements": [[4, "management-of-requirements"]], "Module contents": [[0, "module-datacompy"], [1, "module-datacompy.spark"]], "Overview": [[8, "overview"], [9, "overview"]], "Pandas Usage": [[8, null]], "Polars Usage": [[9, null]], "Pre-Commit Hooks": [[4, "pre-commit-hooks"]], "Provide Snowpark dataframes": [[10, "provide-snowpark-dataframes"]], "Provide the full name ({db}.{schema}.{table_name}) of valid Snowflake tables": [[10, "provide-the-full-name-db-schema-table-name-of-valid-snowflake-tables"]], "PyPI (basic)": [[7, "pypi-basic"]], "Quick Installation": [[6, "quick-installation"]], "Release Guide": [[4, "release-guide"]], "Reports": [[8, "reports"], [9, "reports"], [10, "reports"], [11, "reports"]], "Roadmap": [[6, "roadmap"]], "Run unit tests": [[4, "run-unit-tests"]], "Setup used": [[3, "setup-used"]], "Snowflake testing": [[4, "snowflake-testing"]], "SnowflakeCompare Object Setup": [[10, "snowflakecompare-object-setup"]], "Snowpark/Snowflake Usage": [[10, null]], "Spark Usage": [[11, null]], "SparkPandasCompare Deprecation": [[6, "sparkpandascompare-deprecation"]], "SparkSQLCompare": [[11, "sparksqlcompare"]], "Submodules": [[0, "submodules"], [1, "submodules"]], "Subpackages": [[0, "subpackages"]], "Supported backends": [[6, "supported-backends"]], "Supported versions and dependncies": [[6, "supported-versions-and-dependncies"]], "TLDR": [[3, "tldr"]], "The Data": [[3, "the-data"]], "conda (installs dependencies from Conda Forge)": [[7, "conda-installs-dependencies-from-conda-forge"]], "datacompy": [[2, null]], "datacompy package": [[0, null]], "datacompy.base module": [[0, "module-datacompy.base"]], "datacompy.core module": [[0, "module-datacompy.core"]], "datacompy.fugue module": [[0, "module-datacompy.fugue"]], "datacompy.polars module": [[0, "module-datacompy.polars"]], "datacompy.snowflake module": [[0, "module-datacompy.snowflake"]], "datacompy.spark package": [[1, null]], "datacompy.spark.legacy module": [[1, "module-datacompy.spark.legacy"]], "datacompy.spark.pandas module": [[1, "module-datacompy.spark.pandas"]], "datacompy.spark.sql module": [[1, "module-datacompy.spark.sql"]], "edgetest": [[4, "edgetest"]], "virtualenv (install dependencies from PyPI)": [[7, "virtualenv-install-dependencies-from-pypi"]]}, "docnames": ["api/datacompy", "api/datacompy.spark", "api/modules", "benchmark", "developer_instructions", "fugue_usage", "index", "install", "pandas_usage", "polars_usage", "snowflake_usage", "spark_usage"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["api/datacompy.rst", "api/datacompy.spark.rst", "api/modules.rst", "benchmark.rst", "developer_instructions.rst", "fugue_usage.rst", "index.rst", "install.rst", "pandas_usage.rst", "polars_usage.rst", "snowflake_usage.rst", "spark_usage.rst"], "indexentries": {"all_columns_match() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.all_columns_match", false]], "all_columns_match() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.all_columns_match", false]], "all_columns_match() (datacompy.compare method)": [[0, "datacompy.Compare.all_columns_match", false]], "all_columns_match() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.all_columns_match", false]], "all_columns_match() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.all_columns_match", false]], "all_columns_match() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.all_columns_match", false]], "all_columns_match() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.all_columns_match", false]], "all_columns_match() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.all_columns_match", false]], "all_columns_match() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.all_columns_match", false]], "all_columns_match() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.all_columns_match", false]], "all_columns_match() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.all_columns_match", false]], "all_columns_match() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.all_columns_match", false]], "all_columns_match() (in module datacompy)": [[0, "datacompy.all_columns_match", false]], "all_columns_match() (in module datacompy.fugue)": [[0, "datacompy.fugue.all_columns_match", false]], "all_mismatch() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.all_mismatch", false]], "all_mismatch() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.all_mismatch", false]], "all_mismatch() (datacompy.compare method)": [[0, "datacompy.Compare.all_mismatch", false]], "all_mismatch() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.all_mismatch", false]], "all_mismatch() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.all_mismatch", false]], "all_mismatch() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.all_mismatch", false]], "all_mismatch() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.all_mismatch", false]], "all_mismatch() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.all_mismatch", false]], "all_mismatch() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.all_mismatch", false]], "all_mismatch() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.all_mismatch", false]], "all_mismatch() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.all_mismatch", false]], "all_mismatch() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.all_mismatch", false]], "all_rows_overlap() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.compare method)": [[0, "datacompy.Compare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.all_rows_overlap", false]], "all_rows_overlap() (in module datacompy)": [[0, "datacompy.all_rows_overlap", false]], "all_rows_overlap() (in module datacompy.fugue)": [[0, "datacompy.fugue.all_rows_overlap", false]], "base_row_count (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.base_row_count", false]], "basecompare (class in datacompy)": [[0, "datacompy.BaseCompare", false]], "basecompare (class in datacompy.base)": [[0, "datacompy.base.BaseCompare", false]], "calculate_max_diff() (in module datacompy)": [[0, "datacompy.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.core)": [[0, "datacompy.core.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.polars)": [[0, "datacompy.polars.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.calculate_max_diff", false]], "calculate_null_diff() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.calculate_null_diff", false]], "calculate_null_diff() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.calculate_null_diff", false]], "columns_compared (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_compared", false]], "columns_equal() (in module datacompy)": [[0, "datacompy.columns_equal", false]], "columns_equal() (in module datacompy.core)": [[0, "datacompy.core.columns_equal", false]], "columns_equal() (in module datacompy.polars)": [[0, "datacompy.polars.columns_equal", false]], "columns_equal() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.columns_equal", false]], "columns_equal() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.columns_equal", false]], "columns_equal() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.columns_equal", false]], "columns_in_both (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_in_both", false]], "columns_only_base (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_only_base", false]], "columns_only_compare (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_only_compare", false]], "common_row_count (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.common_row_count", false]], "compare (class in datacompy)": [[0, "datacompy.Compare", false]], "compare (class in datacompy.core)": [[0, "datacompy.core.Compare", false]], "compare_row_count (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.compare_row_count", false]], "compare_string_and_date_columns() (in module datacompy)": [[0, "datacompy.compare_string_and_date_columns", false]], "compare_string_and_date_columns() (in module datacompy.core)": [[0, "datacompy.core.compare_string_and_date_columns", false]], "compare_string_and_date_columns() (in module datacompy.polars)": [[0, "datacompy.polars.compare_string_and_date_columns", false]], "compare_string_and_date_columns() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.compare_string_and_date_columns", false]], "count_matching_rows() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.compare method)": [[0, "datacompy.Compare.count_matching_rows", false]], "count_matching_rows() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.count_matching_rows", false]], "count_matching_rows() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.count_matching_rows", false]], "count_matching_rows() (in module datacompy)": [[0, "datacompy.count_matching_rows", false]], "count_matching_rows() (in module datacompy.fugue)": [[0, "datacompy.fugue.count_matching_rows", false]], "datacompy": [[0, "module-datacompy", false]], "datacompy.base": [[0, "module-datacompy.base", false]], "datacompy.core": [[0, "module-datacompy.core", false]], "datacompy.fugue": [[0, "module-datacompy.fugue", false]], "datacompy.polars": [[0, "module-datacompy.polars", false]], "datacompy.snowflake": [[0, "module-datacompy.snowflake", false]], "datacompy.spark": [[1, "module-datacompy.spark", false]], "datacompy.spark.legacy": [[1, "module-datacompy.spark.legacy", false]], "datacompy.spark.pandas": [[1, "module-datacompy.spark.pandas", false]], "datacompy.spark.sql": [[1, "module-datacompy.spark.sql", false]], "decimal_comparator() (in module datacompy.spark.legacy)": [[1, "datacompy.spark.legacy.decimal_comparator", false]], "decimal_comparator() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.decimal_comparator", false]], "df1 (datacompy.base.basecompare property)": [[0, "datacompy.base.BaseCompare.df1", false]], "df1 (datacompy.basecompare property)": [[0, "datacompy.BaseCompare.df1", false]], "df1 (datacompy.compare property)": [[0, "datacompy.Compare.df1", false]], "df1 (datacompy.core.compare property)": [[0, "datacompy.core.Compare.df1", false]], "df1 (datacompy.polars.polarscompare property)": [[0, "datacompy.polars.PolarsCompare.df1", false]], "df1 (datacompy.polarscompare property)": [[0, "datacompy.PolarsCompare.df1", false]], "df1 (datacompy.snowflake.snowflakecompare property)": [[0, "datacompy.snowflake.SnowflakeCompare.df1", false]], "df1 (datacompy.snowflakecompare property)": [[0, "datacompy.SnowflakeCompare.df1", false]], "df1 (datacompy.spark.pandas.sparkpandascompare property)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df1", false]], "df1 (datacompy.spark.sql.sparksqlcompare property)": [[1, "datacompy.spark.sql.SparkSQLCompare.df1", false]], "df1 (datacompy.sparkpandascompare property)": [[0, "datacompy.SparkPandasCompare.df1", false]], "df1 (datacompy.sparksqlcompare property)": [[0, "datacompy.SparkSQLCompare.df1", false]], "df1_unq_columns() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.compare method)": [[0, "datacompy.Compare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.df1_unq_columns", false]], "df2 (datacompy.base.basecompare property)": [[0, "datacompy.base.BaseCompare.df2", false]], "df2 (datacompy.basecompare property)": [[0, "datacompy.BaseCompare.df2", false]], "df2 (datacompy.compare property)": [[0, "datacompy.Compare.df2", false]], "df2 (datacompy.core.compare property)": [[0, "datacompy.core.Compare.df2", false]], "df2 (datacompy.polars.polarscompare property)": [[0, "datacompy.polars.PolarsCompare.df2", false]], "df2 (datacompy.polarscompare property)": [[0, "datacompy.PolarsCompare.df2", false]], "df2 (datacompy.snowflake.snowflakecompare property)": [[0, "datacompy.snowflake.SnowflakeCompare.df2", false]], "df2 (datacompy.snowflakecompare property)": [[0, "datacompy.SnowflakeCompare.df2", false]], "df2 (datacompy.spark.pandas.sparkpandascompare property)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df2", false]], "df2 (datacompy.spark.sql.sparksqlcompare property)": [[1, "datacompy.spark.sql.SparkSQLCompare.df2", false]], "df2 (datacompy.sparkpandascompare property)": [[0, "datacompy.SparkPandasCompare.df2", false]], "df2 (datacompy.sparksqlcompare property)": [[0, "datacompy.SparkSQLCompare.df2", false]], "df2_unq_columns() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.compare method)": [[0, "datacompy.Compare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.df2_unq_columns", false]], "generate_id_within_group() (in module datacompy)": [[0, "datacompy.generate_id_within_group", false]], "generate_id_within_group() (in module datacompy.core)": [[0, "datacompy.core.generate_id_within_group", false]], "generate_id_within_group() (in module datacompy.polars)": [[0, "datacompy.polars.generate_id_within_group", false]], "generate_id_within_group() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.generate_id_within_group", false]], "get_merged_columns() (in module datacompy)": [[0, "datacompy.get_merged_columns", false]], "get_merged_columns() (in module datacompy.core)": [[0, "datacompy.core.get_merged_columns", false]], "get_merged_columns() (in module datacompy.polars)": [[0, "datacompy.polars.get_merged_columns", false]], "get_merged_columns() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.get_merged_columns", false]], "get_merged_columns() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.get_merged_columns", false]], "get_merged_columns() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.get_merged_columns", false]], "intersect_columns() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.intersect_columns", false]], "intersect_columns() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.intersect_columns", false]], "intersect_columns() (datacompy.compare method)": [[0, "datacompy.Compare.intersect_columns", false]], "intersect_columns() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.intersect_columns", false]], "intersect_columns() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.intersect_columns", false]], "intersect_columns() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.intersect_columns", false]], "intersect_columns() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.intersect_columns", false]], "intersect_columns() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.intersect_columns", false]], "intersect_columns() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.intersect_columns", false]], "intersect_columns() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.intersect_columns", false]], "intersect_columns() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.intersect_columns", false]], "intersect_columns() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.intersect_columns", false]], "intersect_columns() (in module datacompy)": [[0, "datacompy.intersect_columns", false]], "intersect_columns() (in module datacompy.fugue)": [[0, "datacompy.fugue.intersect_columns", false]], "intersect_rows_match() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.compare method)": [[0, "datacompy.Compare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.intersect_rows_match", false]], "is_match() (in module datacompy)": [[0, "datacompy.is_match", false]], "is_match() (in module datacompy.fugue)": [[0, "datacompy.fugue.is_match", false]], "known_difference (datacompy.spark.legacy.matchtype attribute)": [[1, "datacompy.spark.legacy.MatchType.KNOWN_DIFFERENCE", false]], "legacysparkcompare (class in datacompy.spark.legacy)": [[1, "datacompy.spark.legacy.LegacySparkCompare", false]], "match (datacompy.spark.legacy.matchtype attribute)": [[1, "datacompy.spark.legacy.MatchType.MATCH", false]], "matches() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.matches", false]], "matches() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.matches", false]], "matches() (datacompy.compare method)": [[0, "datacompy.Compare.matches", false]], "matches() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.matches", false]], "matches() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.matches", false]], "matches() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.matches", false]], "matches() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.matches", false]], "matches() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.matches", false]], "matches() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.matches", false]], "matches() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.matches", false]], "matches() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.matches", false]], "matches() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.matches", false]], "matchtype (class in datacompy.spark.legacy)": [[1, "datacompy.spark.legacy.MatchType", false]], "mismatch (datacompy.spark.legacy.matchtype attribute)": [[1, "datacompy.spark.legacy.MatchType.MISMATCH", false]], "module": [[0, "module-datacompy", false], [0, "module-datacompy.base", false], [0, "module-datacompy.core", false], [0, "module-datacompy.fugue", false], [0, "module-datacompy.polars", false], [0, "module-datacompy.snowflake", false], [1, "module-datacompy.spark", false], [1, "module-datacompy.spark.legacy", false], [1, "module-datacompy.spark.pandas", false], [1, "module-datacompy.spark.sql", false]], "polarscompare (class in datacompy)": [[0, "datacompy.PolarsCompare", false]], "polarscompare (class in datacompy.polars)": [[0, "datacompy.polars.PolarsCompare", false]], "render() (in module datacompy)": [[0, "datacompy.render", false]], "render() (in module datacompy.core)": [[0, "datacompy.core.render", false]], "render() (in module datacompy.polars)": [[0, "datacompy.polars.render", false]], "render() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.render", false]], "render() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.render", false]], "render() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.render", false]], "report() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.report", false]], "report() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.report", false]], "report() (datacompy.compare method)": [[0, "datacompy.Compare.report", false]], "report() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.report", false]], "report() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.report", false]], "report() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.report", false]], "report() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.report", false]], "report() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.report", false]], "report() (datacompy.spark.legacy.legacysparkcompare method)": [[1, "datacompy.spark.legacy.LegacySparkCompare.report", false]], "report() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.report", false]], "report() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.report", false]], "report() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.report", false]], "report() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.report", false]], "report() (in module datacompy)": [[0, "datacompy.report", false]], "report() (in module datacompy.fugue)": [[0, "datacompy.fugue.report", false]], "rows_both_all (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_both_all", false]], "rows_both_mismatch (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_both_mismatch", false]], "rows_only_base (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_only_base", false]], "rows_only_compare (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_only_compare", false]], "sample_mismatch() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.compare method)": [[0, "datacompy.Compare.sample_mismatch", false]], "sample_mismatch() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.sample_mismatch", false]], "sample_mismatch() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.sample_mismatch", false]], "snowflakecompare (class in datacompy)": [[0, "datacompy.SnowflakeCompare", false]], "snowflakecompare (class in datacompy.snowflake)": [[0, "datacompy.snowflake.SnowflakeCompare", false]], "sparkpandascompare (class in datacompy)": [[0, "datacompy.SparkPandasCompare", false]], "sparkpandascompare (class in datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.SparkPandasCompare", false]], "sparksqlcompare (class in datacompy)": [[0, "datacompy.SparkSQLCompare", false]], "sparksqlcompare (class in datacompy.spark.sql)": [[1, "datacompy.spark.sql.SparkSQLCompare", false]], "subset() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.subset", false]], "subset() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.subset", false]], "subset() (datacompy.compare method)": [[0, "datacompy.Compare.subset", false]], "subset() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.subset", false]], "subset() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.subset", false]], "subset() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.subset", false]], "subset() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.subset", false]], "subset() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.subset", false]], "subset() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.subset", false]], "subset() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.subset", false]], "subset() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.subset", false]], "subset() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.subset", false]], "temp_column_name() (in module datacompy)": [[0, "datacompy.temp_column_name", false]], "temp_column_name() (in module datacompy.base)": [[0, "datacompy.base.temp_column_name", false]], "temp_column_name() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.temp_column_name", false]], "unq_columns() (in module datacompy)": [[0, "datacompy.unq_columns", false]], "unq_columns() (in module datacompy.fugue)": [[0, "datacompy.fugue.unq_columns", false]]}, "objects": {"": [[0, 0, 0, "-", "datacompy"]], "datacompy": [[0, 1, 1, "", "BaseCompare"], [0, 1, 1, "", "Compare"], [0, 1, 1, "", "PolarsCompare"], [0, 1, 1, "", "SnowflakeCompare"], [0, 1, 1, "", "SparkPandasCompare"], [0, 1, 1, "", "SparkSQLCompare"], [0, 4, 1, "", "all_columns_match"], [0, 4, 1, "", "all_rows_overlap"], [0, 0, 0, "-", "base"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "compare_string_and_date_columns"], [0, 0, 0, "-", "core"], [0, 4, 1, "", "count_matching_rows"], [0, 0, 0, "-", "fugue"], [0, 4, 1, "", "generate_id_within_group"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "intersect_columns"], [0, 4, 1, "", "is_match"], [0, 0, 0, "-", "polars"], [0, 4, 1, "", "render"], [0, 4, 1, "", "report"], [0, 0, 0, "-", "snowflake"], [1, 0, 0, "-", "spark"], [0, 4, 1, "", "temp_column_name"], [0, 4, 1, "", "unq_columns"]], "datacompy.BaseCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.Compare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.PolarsCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.SnowflakeCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.SparkPandasCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.SparkSQLCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.base": [[0, 1, 1, "", "BaseCompare"], [0, 4, 1, "", "temp_column_name"]], "datacompy.base.BaseCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.core": [[0, 1, 1, "", "Compare"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "compare_string_and_date_columns"], [0, 4, 1, "", "generate_id_within_group"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "render"]], "datacompy.core.Compare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.fugue": [[0, 4, 1, "", "all_columns_match"], [0, 4, 1, "", "all_rows_overlap"], [0, 4, 1, "", "count_matching_rows"], [0, 4, 1, "", "intersect_columns"], [0, 4, 1, "", "is_match"], [0, 4, 1, "", "report"], [0, 4, 1, "", "unq_columns"]], "datacompy.polars": [[0, 1, 1, "", "PolarsCompare"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "compare_string_and_date_columns"], [0, 4, 1, "", "generate_id_within_group"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "render"]], "datacompy.polars.PolarsCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.snowflake": [[0, 1, 1, "", "SnowflakeCompare"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "calculate_null_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "render"], [0, 4, 1, "", "temp_column_name"]], "datacompy.snowflake.SnowflakeCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.spark": [[1, 0, 0, "-", "legacy"], [1, 0, 0, "-", "pandas"], [1, 0, 0, "-", "sql"]], "datacompy.spark.legacy": [[1, 1, 1, "", "LegacySparkCompare"], [1, 1, 1, "", "MatchType"], [1, 4, 1, "", "decimal_comparator"]], "datacompy.spark.legacy.LegacySparkCompare": [[1, 3, 1, "", "base_row_count"], [1, 3, 1, "", "columns_compared"], [1, 3, 1, "", "columns_in_both"], [1, 3, 1, "", "columns_only_base"], [1, 3, 1, "", "columns_only_compare"], [1, 3, 1, "", "common_row_count"], [1, 3, 1, "", "compare_row_count"], [1, 2, 1, "", "report"], [1, 3, 1, "", "rows_both_all"], [1, 3, 1, "", "rows_both_mismatch"], [1, 3, 1, "", "rows_only_base"], [1, 3, 1, "", "rows_only_compare"]], "datacompy.spark.legacy.MatchType": [[1, 5, 1, "", "KNOWN_DIFFERENCE"], [1, 5, 1, "", "MATCH"], [1, 5, 1, "", "MISMATCH"]], "datacompy.spark.pandas": [[1, 1, 1, "", "SparkPandasCompare"], [1, 4, 1, "", "calculate_max_diff"], [1, 4, 1, "", "columns_equal"], [1, 4, 1, "", "compare_string_and_date_columns"], [1, 4, 1, "", "generate_id_within_group"], [1, 4, 1, "", "get_merged_columns"], [1, 4, 1, "", "render"]], "datacompy.spark.pandas.SparkPandasCompare": [[1, 2, 1, "", "all_columns_match"], [1, 2, 1, "", "all_mismatch"], [1, 2, 1, "", "all_rows_overlap"], [1, 2, 1, "", "count_matching_rows"], [1, 3, 1, "", "df1"], [1, 2, 1, "", "df1_unq_columns"], [1, 3, 1, "", "df2"], [1, 2, 1, "", "df2_unq_columns"], [1, 2, 1, "", "intersect_columns"], [1, 2, 1, "", "intersect_rows_match"], [1, 2, 1, "", "matches"], [1, 2, 1, "", "report"], [1, 2, 1, "", "sample_mismatch"], [1, 2, 1, "", "subset"]], "datacompy.spark.sql": [[1, 1, 1, "", "SparkSQLCompare"], [1, 4, 1, "", "calculate_max_diff"], [1, 4, 1, "", "calculate_null_diff"], [1, 4, 1, "", "columns_equal"], [1, 4, 1, "", "decimal_comparator"], [1, 4, 1, "", "get_merged_columns"], [1, 4, 1, "", "render"]], "datacompy.spark.sql.SparkSQLCompare": [[1, 2, 1, "", "all_columns_match"], [1, 2, 1, "", "all_mismatch"], [1, 2, 1, "", "all_rows_overlap"], [1, 2, 1, "", "count_matching_rows"], [1, 3, 1, "", "df1"], [1, 2, 1, "", "df1_unq_columns"], [1, 3, 1, "", "df2"], [1, 2, 1, "", "df2_unq_columns"], [1, 2, 1, "", "intersect_columns"], [1, 2, 1, "", "intersect_rows_match"], [1, 2, 1, "", "matches"], [1, 2, 1, "", "report"], [1, 2, 1, "", "sample_mismatch"], [1, 2, 1, "", "subset"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "property", "Python property"], "4": ["py", "function", "Python function"], "5": ["py", "attribute", "Python attribute"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:property", "4": "py:function", "5": "py:attribute"}, "terms": {"": [0, 1, 6, 8, 9, 11], "0": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "000": [3, 8, 9, 10, 11], "0000": [8, 9, 10, 11], "0001": [8, 9], "0005": [8, 9, 10, 11], "01": [5, 8, 9, 10, 11], "025": 3, "03": 10, "04": 10, "041": 3, "05": [5, 8, 9, 10, 11], "0500": [8, 9, 10, 11], "0701": 3, "1": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "10": [0, 1, 3, 5, 6, 8, 9, 10, 11], "100": [1, 3], "1000": 3, "10000001234": [5, 8, 9, 10, 11], "10000001235": [5, 8, 9, 10, 11], "10000001236": [5, 8, 9, 10, 11], "10000001237": [5, 8, 9, 10, 11], "10000001238": [5, 8, 9, 10, 11], "10000001239": [5, 10, 11], "109": 3, "11": [3, 6, 9], "111": [5, 8, 9, 10, 11], "1113": 3, "12": [5, 6, 7, 8, 9, 10, 11], "120": 3, "123": [5, 8, 9, 10, 11], "123456": [5, 8, 9, 10, 11], "1257": 3, "127": 3, "13": [6, 11], "130": 3, "1345": [5, 8, 9, 10, 11], "14": [0, 6, 11], "14530": [5, 8, 9, 10, 11], "15": 3, "155": [5, 8, 9, 10, 11], "1555": [5, 8, 9, 10, 11], "16": 3, "16777216": 10, "17": 3, "175": 3, "18": 3, "193": 3, "194": 3, "196": 3, "1e": 10, "2": [0, 1, 3, 6, 8, 9, 10, 11], "20": 3, "2017": [5, 8, 9, 10, 11], "21": 4, "2185": 3, "234": 3, "262": 3, "2763": 3, "2838": 3, "3": [3, 4, 6, 7, 8, 9, 10, 11], "304": 3, "31": 3, "3112": 3, "3204": 3, "32gb": 3, "330": 3, "345": [5, 8, 9, 10, 11], "4": [5, 6, 8, 9, 10, 11], "45": [5, 8, 9, 10, 11], "455": 3, "47": 3, "494": 3, "5": [4, 6, 8, 9, 10, 11], "50": 3, "500": 3, "560": 3, "57": 3, "5735": 3, "578": 3, "6": [3, 4, 8, 9, 10, 11], "6094": 3, "62": 3, "6274": 3, "64gb": 3, "7": [4, 8], "743": 3, "8": [1, 3, 9], "804": 3, "827": 3, "9": [6, 7], "90": 3, "94": 3, "96": 3, "9814": 3, "A": [0, 1, 4, 7, 8, 9, 10, 11], "And": [8, 10, 11], "As": [0, 9], "At": 6, "By": [1, 6], "For": [4, 5, 8, 9, 10, 11], "If": [0, 1, 3, 6, 7, 8, 10, 11], "In": [4, 5, 8], "It": [3, 4, 6, 8, 10, 11], "No": [10, 11], "OR": [8, 9], "The": [0, 1, 4, 5, 6, 8, 9, 11], "Then": [0, 4, 6], "There": [8, 9, 10, 11], "To": [6, 11], "Will": [0, 1], "With": [5, 6, 11], "_df1": [0, 1], "_io": 1, "_merge_left": 11, "_merge_right": 11, "_temp_x": 0, "ab": [0, 1], "abc": 0, "abl": 3, "about": [4, 8], "abov": [4, 6, 7, 8, 9, 10, 11], "abs_tol": [0, 1, 5, 8, 9, 10, 11], "absolut": [0, 1, 8, 9, 10, 11], "abstract": 0, "accept": [6, 11], "access": [4, 5], "account": 4, "acct_id": [5, 8, 9, 10, 11], "acct_id_df1": [10, 11], "acct_id_df2": [10, 11], "accur": [0, 6], "achiev": 5, "across": [5, 6], "action": 4, "activ": [4, 7], "actual": [0, 1], "ad": [0, 1, 4], "add": 7, "addit": [4, 6], "adher": 6, "adopt": 5, "after": [0, 4, 8, 9, 10, 11], "again": [8, 10, 11], "against": [1, 10], "aggreg": 5, "agreement": 6, "align": [6, 11], "all": [0, 1, 4, 6, 7, 8, 9, 10, 11], "all_columns_match": [0, 1, 2, 5, 6], "all_mismatch": [0, 1, 2], "all_rows_overlap": [0, 1, 2, 5, 6], "allow": [0, 1], "alongsid": 0, "alreadi": [1, 8], "also": [1, 4, 5, 6, 8, 9, 11], "alwai": 3, "amount": [0, 1, 3], "an": [0, 1, 3, 9, 10], "ani": [0, 1, 4, 6, 8, 9, 10, 11], "anoth": [0, 1], "anydatafram": 0, "apach": 9, "api": [4, 11], "apidoc": 4, "append": [0, 1], "appli": [0, 1], "appreci": 6, "ar": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11], "archiv": 6, "arr1": 8, "arr2": 8, "arrow": [5, 6, 9], "artifact": 4, "ask": 6, "assert_almost_equ": 8, "assert_array_equ": 8, "assert_frame_equ": 8, "assert_series_equ": 8, "attempt": [0, 1], "attribut": [10, 11], "autom": 4, "automag": [0, 1], "automat": 4, "avail": [8, 9, 10, 11], "awar": 9, "b": 1, "back": 4, "backend": 5, "background": 5, "base": [1, 2, 3, 4, 5, 6, 8], "base_column_nam": 1, "base_df": 1, "base_row_count": [0, 1], "basecompar": [0, 1, 2, 6], "basi": [1, 10], "basic": [0, 1, 6], "been": [6, 8, 9, 10, 11], "befor": [0, 1, 4, 6, 8, 10, 11], "behaviour": [6, 9, 11], "behind": [4, 8, 10, 11], "being": [1, 4], "belong": 4, "below": [4, 6], "benchmark": 6, "benefit": 5, "best": 3, "better": [6, 11], "between": [0, 1, 8], "bias": 3, "bin": 7, "black": 4, "bluth": [5, 8, 9, 10, 11], "bob": [5, 8, 9, 10, 11], "bool": [0, 1, 9], "boolean": [0, 1], "both": [0, 1], "boto3": 4, "branch": 4, "break": 4, "build": 4, "builder": [5, 10, 11], "c": 4, "cach": 1, "cache_intermedi": 1, "calculate_max_diff": [0, 1, 2, 6], "calculate_null_diff": [0, 1, 2, 6], "call": [8, 9, 10, 11], "can": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "canon": 1, "capabl": 8, "carri": [0, 6], "case": [0, 1, 5, 10], "cast": [0, 1], "cast_column_names_low": [0, 1], "caus": 1, "caveat": 6, "certain": 1, "chang": 4, "channel": 7, "check": [0, 1, 8], "checkout": 4, "choic": 8, "chose": 10, "chunk": 5, "cicd": 4, "cla": 6, "class": [0, 1, 5, 6, 8, 11], "clean": 4, "cluster": 4, "coars": 5, "code": [4, 5, 6, 9], "cogroup": 5, "col_1": [0, 1], "col_2": [0, 1], "col_match": [0, 1], "collaps": 4, "collect": 4, "column": [0, 1, 3, 5, 8, 9, 10, 11], "column_count": [0, 1], "column_map": 1, "columnar": 9, "columns_compar": [0, 1], "columns_equ": [0, 1, 2, 6], "columns_in_both": [0, 1], "columns_map": 1, "columns_only_bas": [0, 1], "columns_only_compar": [0, 1], "combin": [8, 10, 11], "come": [4, 8, 9], "command": [0, 1, 4], "commit": 6, "common": [1, 8, 9, 10, 11], "common_row_count": [0, 1], "commun": [4, 5], "compar": [0, 1, 2, 3, 4, 6, 10, 11], "compare_column_nam": 1, "compare_df": 1, "compare_row_count": [0, 1], "compare_string_and_date_column": [0, 1, 2, 6], "comparin": 1, "comparison": [0, 1, 5, 8, 9, 10, 11], "compat": [5, 6], "compris": 1, "conda": 6, "conduct": 6, "config": [7, 10], "configur": 4, "connect": [0, 4], "connection_paramet": 10, "consid": [0, 1, 9], "consider": 6, "consist": [1, 3, 5, 6, 11], "constraint": 8, "contain": [0, 1, 8], "content": 2, "continu": [6, 11], "contribut": [3, 6], "control": [0, 1], "conveni": 6, "convent": [0, 1], "convert": [0, 1, 8], "core": [2, 3, 4, 6], "correspond": [4, 5], "could": 8, "count": [0, 1], "count_matching_row": [0, 1, 2, 6], "cpu": 3, "creat": [0, 1, 3, 7, 10], "createdatafram": [5, 10, 11], "creation": [0, 1], "cross": 6, "current": [6, 8, 11], "dai": 4, "dask": [5, 6], "data": [0, 1, 5, 6, 8], "data1": [5, 8, 9, 10, 11], "data2": [5, 8, 9, 10, 11], "databas": 4, "datacompi": [4, 5, 7, 8, 9, 10, 11], "datacompy_nul": 8, "datafram": [0, 1, 3, 5, 6, 8, 9, 11], "dataset": [1, 3, 5, 8], "date": [0, 1, 4, 10], "date_fld": [5, 8, 9, 10, 11], "date_fld_df1": [10, 11], "datetim": 10, "de": 1, "decim": [0, 1], "decimal_compar": [0, 1], "decis": 4, "dedup": 1, "dedupl": [0, 1], "default": [0, 1, 4, 5, 10, 11], "defin": [1, 4], "denot": [0, 1, 4], "depend": [4, 5, 6], "dependneci": 11, "deprec": [5, 11], "describ": [1, 8], "desir": 4, "detail": [4, 6], "dev": 4, "develop": 6, "df": 0, "df1": [0, 1, 2, 5, 8, 9, 10, 11], "df1_name": [0, 1, 5, 8, 9, 11], "df1_unq_column": [0, 1, 2, 8, 9, 10, 11], "df1_unq_row": [0, 1, 8, 9, 10, 11], "df2": [0, 1, 2, 5, 8, 9, 10, 11], "df2_name": [0, 1, 5, 8, 9, 11], "df2_unq_column": [0, 1, 2, 8, 9, 10, 11], "df2_unq_row": [0, 1, 8, 9, 10, 11], "df_1": 10, "df_2": 10, "dict": 1, "dictionari": 1, "did": 3, "diff": [0, 1, 8, 9, 10, 11], "differ": [0, 1, 5, 6, 8, 9, 10, 11], "differenti": 10, "directli": [8, 10], "directori": [0, 1, 4], "disconnect": 4, "disk": 8, "displai": [0, 1], "dist": 4, "distinguish": [0, 1], "distribut": [3, 6], "dnr": 3, "do": [0, 1, 4, 5], "doc": 4, "docstr": 4, "document": [6, 9], "doe": [4, 8, 9, 10, 11], "dollar_amt": [5, 8, 9, 10, 11], "dollar_amt_df1": [10, 11], "dollar_amt_df2": [10, 11], "don": [0, 1, 8, 9, 10, 11], "done": [1, 3, 10, 11], "doubl": 10, "drop": [8, 10, 11], "dtype": [8, 9, 10, 11], "duckdb": [5, 6], "due": [3, 6, 9, 11], "dupe": 1, "duplic": 6, "e": [0, 1, 4], "each": [0, 1, 4, 5, 8, 10, 11], "easier": 4, "easili": [0, 1], "edgetest": 6, "either": [0, 10], "empti": 8, "encod": 1, "endless": 4, "engin": 9, "ensur": 4, "enter": 0, "enum": 1, "env": 7, "environ": [4, 7], "equal": [0, 1, 6, 8, 9, 10, 11], "equal_nul": 10, "equival": 5, "essenti": 10, "evalu": [0, 1], "exact": [0, 1, 10], "exactli": [0, 5, 8], "exampl": [1, 5, 8, 10, 11], "excel": 4, "except": [0, 1], "exclud": 1, "execut": [0, 1, 4], "executor": 3, "exist": [0, 1], "expect": 6, "experi": 3, "experiment": 9, "export": 4, "extend": [0, 1, 6], "extra": 4, "extract": 10, "f64": 9, "fail": [0, 8], "fals": [0, 1, 5, 8, 9, 10, 11], "fast": [0, 3], "favour": 5, "featur": 4, "feedback": 5, "few": [8, 9, 10, 11], "field": [0, 1, 8], "file": [0, 1], "filehandl": 1, "filenam": [0, 1], "fill": 8, "final": [4, 5], "fine": [6, 7], "first": [0, 1, 4, 8, 9, 10, 11], "fit": 8, "flag": [0, 1], "float": [0, 1, 10], "float64": [8, 9, 11], "float_fld": [5, 8, 9, 10, 11], "float_fld_df1": [10, 11], "float_fld_df2": [10, 11], "folder": 4, "follow": [4, 5, 9], "for_displai": [0, 1], "forc": 0, "forg": 6, "form": 1, "format": [0, 1, 9], "forward": [3, 6, 11], "found": 6, "frame": [0, 1], "framework": 5, "free": 4, "from": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "fugu": [2, 3, 6], "full": 5, "fulli": [0, 1], "functioanl": [6, 7], "function": [0, 1, 5, 6, 9], "further": 3, "futur": [4, 6], "gather": 5, "gener": [0, 1, 3, 6, 8, 9, 10, 11], "generate_id_within_group": [0, 1, 2, 6], "georg": [5, 8, 9, 10, 11], "get": [0, 1, 4, 5, 10], "get_merged_column": [0, 1, 2, 6], "getorcr": [5, 11], "gh": 4, "ghpage": 4, "git": 4, "github": [4, 6], "given": [1, 10], "go": [0, 1, 4], "goal": 8, "gold": 1, "good": 9, "googl": 4, "grain": 3, "great": 5, "group": [0, 1, 8, 10, 11], "grow": 0, "guarante": 5, "guid": 6, "guidanc": 4, "gz": 4, "ha": [4, 6, 8, 9, 10, 11], "handl": [0, 1, 3, 8, 9, 10, 11], "hard": 3, "have": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "help": [3, 4], "helper": 4, "here": [4, 6, 8, 9, 10, 11], "highli": 7, "honor": 6, "hook": 6, "hope": 5, "how": [0, 3, 4, 6], "html": [0, 1, 4], "html_file": [0, 1], "http": 4, "human": [0, 1, 5, 8, 10, 11], "i": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11], "i64": 9, "id": [0, 1, 3, 8, 10, 11], "idea": 3, "ident": [0, 1], "identifi": [0, 1], "ignor": [0, 1], "ignore_cas": [0, 1], "ignore_extra_column": [0, 1, 10, 11], "ignore_matching_col": [0, 1], "ignore_spac": [0, 1], "implement": [3, 5, 6, 9, 11], "implementaion": 3, "import": [5, 6, 8, 9, 10, 11], "improv": 3, "includ": [0, 1, 4], "increas": 3, "independ": 4, "index": [0, 1, 6, 8, 9], "indic": [0, 1], "individu": [0, 1], "info": 0, "initi": 8, "input": [1, 10], "insensit": 10, "instal": [4, 5], "instanc": [1, 8, 9, 11], "instanti": [1, 4], "instead": [0, 1], "instruct": 6, "int": [0, 1], "integ": 0, "integr": [5, 6], "interact": 6, "interfac": [5, 6, 9], "intermedi": 1, "intersect": [0, 1], "intersect_column": [0, 1, 2, 5, 6, 8, 9, 10, 11], "intersect_row": [0, 1, 8, 9, 10, 11], "intersect_rows_match": [0, 1, 2], "introduc": [6, 11], "io": [5, 8, 9, 11], "is_match": [0, 2, 5, 6], "isclos": [0, 1], "isn": 0, "isort": 4, "issu": [3, 6, 11], "its": [0, 1, 3, 6], "join": [0, 1, 3, 5, 8, 9, 10, 11], "join_column": [0, 1, 5, 8, 9, 10, 11], "join_nul": 9, "just": [0, 1, 4, 5, 6, 9], "keep": [4, 6, 11], "kei": 1, "kinda": [0, 1], "know": 8, "known": 1, "known_differ": [0, 1], "larg": [1, 3, 8], "lazi": 1, "legaci": [0, 2, 4, 11], "legacysparkcompar": [0, 1, 6, 11], "let": [0, 4, 6], "level": 6, "librari": [5, 6], "licens": 6, "like": [0, 4, 5, 6, 8, 9, 10, 11], "limit": 6, "list": [0, 1, 5, 8, 9, 11], "ll": 4, "loblaw": [5, 8, 9, 10, 11], "local": 4, "logic": [6, 11], "long": 10, "look": [0, 1, 8], "loos": [5, 8, 9, 10, 11], "lot": [3, 8], "lower": [0, 1], "lowest": 6, "lucil": [5, 8, 9, 10, 11], "m": 4, "machin": [3, 4], "mahari": [5, 8, 9, 10, 11], "mai": [5, 8, 9, 10], "main": [4, 8], "maintain": 5, "make": [1, 3, 4, 6], "makefil": 4, "manag": [5, 6], "mani": [5, 6], "map": 5, "match": [0, 1, 2, 6, 8, 9, 10, 11], "match_rat": 1, "matchin": 0, "matchtyp": [0, 1], "matrix": 6, "max": [0, 1, 8, 9, 10, 11], "maximum": [0, 1], "mean": [3, 4, 6], "meant": [0, 1], "medium": 3, "mediumish": 3, "memori": [1, 8, 9], "mention": 9, "merg": [0, 1, 4, 8, 10, 11], "merged_df": [0, 1], "messag": 4, "method": [5, 6], "michael": [5, 8, 9, 10, 11], "might": 9, "migrat": 9, "million": 3, "minim": 3, "mismatch": [0, 1], "mix": 0, "mode": 1, "model": 9, "modul": [2, 6, 11], "montonicli": 3, "more": [0, 1, 4, 6, 8, 11], "most": [3, 4], "move": [3, 6, 11], "much": [4, 6, 11], "multipl": 1, "must": [0, 4, 5, 9], "my_report": 1, "name": [0, 1, 5, 7, 8, 9, 11], "name_df1": [8, 9, 10, 11], "name_df2": [8, 9, 10, 11], "name_match": [8, 9, 10, 11], "nan": [0, 1, 8, 9, 10, 11], "nativ": [3, 5, 6, 11], "natur": 3, "na\u00efv": 8, "need": [4, 5, 8], "new": [0, 1, 4, 5, 6, 8, 9, 11], "newlin": [0, 1], "nice": [0, 1], "non": [0, 1, 5], "none": [0, 1, 4, 10], "note": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11], "notic": 5, "now": [6, 11], "np": [0, 1], "npt": 8, "null": [0, 1, 8, 9, 10, 11], "number": [0, 1, 3, 8, 9, 10, 11], "numer": [0, 1, 3], "numpi": [4, 6, 8, 11], "obj1": 8, "obj2": 8, "object": [1, 6, 11], "obsolet": 3, "offici": 4, "olap": 9, "old": [6, 11], "on_index": [0, 8, 10, 11], "onc": 4, "one": [0, 1, 4, 9, 11], "onli": [0, 1, 4, 8, 9, 10, 11], "open": [0, 1, 6], "oper": [0, 1, 5, 8], "option": [0, 1, 4, 5, 11], "order": [0, 1, 4, 5], "orderedset": [0, 1, 9, 10, 11], "org": 4, "origin": [0, 1, 5, 6, 8, 9, 11], "original_df": [0, 1], "orphan": 4, "other": [0, 1, 4, 5, 6, 8, 11], "otherwis": 1, "our": 3, "out": [0, 1, 4, 5, 6, 10, 11], "output": [0, 1, 4, 8], "over": [0, 6], "overlap": [0, 1], "overrid": 0, "overview": 6, "overwrit": [0, 1], "p": 11, "packag": [2, 4, 6], "page": [4, 6], "panda": [0, 2, 3, 4, 5, 6, 7, 9, 11], "parallel": [0, 5], "paramet": [0, 1], "partial": 10, "particip": 6, "partit": 5, "pass": [0, 1, 4, 5], "password": 4, "pd": [5, 8, 11], "peopl": 4, "per": 4, "perform": [1, 3, 5, 6, 11], "pertin": [0, 1], "pick": 8, "pilot": 5, "pip": [4, 5, 6, 7], "pl": 9, "plan": 6, "pleas": [3, 5, 6, 7, 9], "point": 10, "polar": [2, 3, 5, 6, 7], "polarscompar": [0, 2, 6, 9], "pollut": 4, "port": 9, "post": [0, 1], "pre": [0, 1, 6], "precis": 10, "prefer": [6, 11], "preform": 3, "prepend": [0, 1], "present": [0, 1], "prevent": [1, 4], "print": [0, 1, 5, 6, 8, 9, 10, 11], "prior": 10, "proc": [0, 1, 6, 8], "process": [3, 4, 5, 6, 10], "produc": 5, "project": [4, 6], "properli": 4, "properti": [0, 1], "proport": 1, "provid": [0, 1, 4, 5, 6, 8, 11], "pure": 3, "purpos": 4, "push": 4, "py": 4, "py3": 4, "pypi": 6, "pyproject": 4, "pysaprk": [6, 11], "pyspark": [0, 1, 5, 6, 11], "pytest": 4, "python": [4, 5, 6, 7], "pyyaml": 4, "qualiti": 4, "queri": 9, "question": 1, "rai": [5, 6], "rais": 0, "ram": 3, "rang": 3, "rate": 1, "raw": [0, 1, 10], "re": [8, 10, 11], "read": [0, 1], "read_csv": [5, 8, 9, 11], "readabl": [0, 1, 5, 8, 10, 11], "readi": 1, "real": 4, "reason": 4, "recogn": [8, 10, 11], "recommend": [7, 10], "recomput": 1, "record": [0, 1, 3], "redirect": 1, "refer": [0, 1], "regener": 4, "rel": [0, 1, 8, 9, 10, 11], "rel_tol": [0, 1, 5, 8, 9, 10, 11], "relat": 5, "releas": 6, "renam": [6, 11], "render": [0, 1, 2, 4, 6], "replac": [0, 1, 5, 6, 8, 9, 11], "repo": [4, 6], "report": [0, 1, 2, 5, 6], "report_fil": 1, "repositori": 4, "repres": 0, "represent": [0, 1], "requir": [0, 6], "resili": [8, 9], "result": [1, 3, 5, 9, 10], "return": [0, 1, 4, 8, 9, 10, 11], "right": 4, "robert": [5, 8, 9, 10, 11], "root": 4, "row": [0, 1, 3, 6], "rows_both_al": [0, 1], "rows_both_mismatch": [0, 1], "rows_only_bas": [0, 1], "rows_only_compar": [0, 1], "run": [3, 6, 8, 9, 10, 11], "runner": 4, "rust": 9, "sa": [0, 1, 6, 8], "safe": [10, 11], "salt": 3, "same": [0, 1, 5, 8, 10], "sampl": [0, 1, 5, 8, 9, 10, 11], "sample_count": [0, 1], "sample_mismatch": [0, 1, 2], "save": [0, 1], "scene": [8, 10, 11], "schema": [0, 4], "seal": [5, 8, 9, 10, 11], "search": 6, "second": [0, 1, 3, 8, 10, 11], "section": [4, 9], "see": [3, 6, 9], "seem": 3, "semant": [4, 5], "sens": 1, "sensit": 10, "separ": 8, "seri": [0, 1, 8], "seriestyp": 0, "serv": [1, 4], "session": [0, 10], "set": [0, 1, 4, 8], "setup": [4, 6], "setuptool": 7, "sever": [4, 10], "sf": 4, "sf_account": 4, "sf_databas": 4, "sf_pwd": 4, "sf_schema": 4, "sf_uid": 4, "sf_warehous": 4, "shape": 9, "share": [0, 1], "shine": 3, "should": [0, 1, 4, 6, 7, 8, 9, 11], "show": [0, 1, 10], "show_all_column": 1, "shown": 1, "sign": 6, "significantli": 1, "similar": [0, 1, 9], "simpl": [4, 5, 6], "sinc": 4, "singl": [3, 4], "size": 1, "skip": [0, 1], "slate": [6, 11], "slightli": 9, "slower": 3, "small": 3, "snowflak": [2, 6], "snowflakecompar": [0, 2, 6], "snowpark": [0, 6], "so": [6, 8, 9, 10, 11], "some": [0, 1, 3, 6, 8, 9, 10, 11], "some_field": 8, "someth": [0, 4, 6], "somewhat": 8, "soon": 4, "sort": 8, "sourc": [6, 7], "sp": [0, 10], "spark": [0, 2, 3, 5], "spark_df2": 5, "spark_sess": [0, 1], "sparkcompar": [1, 5, 6, 11], "sparkpandascompar": [0, 1, 2, 11], "sparksess": [0, 1, 5, 11], "sparksqlcompar": [0, 1, 2, 6], "specif": 5, "specifi": [1, 5, 8, 9, 10, 11], "speed": 1, "sphinx": 4, "sql": [0, 2, 3, 5, 6, 11], "squash": 4, "standard": 1, "start": [0, 3, 6, 11], "stat": [0, 6], "statement": 1, "stdout": 1, "step": [1, 8], "still": 4, "store": 4, "str": [0, 1, 9], "streamlin": 4, "strict_schema": 0, "string": [0, 1, 3, 8, 9, 10, 11], "stringio": [5, 8, 9, 11], "strip": [0, 1], "strongli": 10, "structur": 0, "style": 4, "sub": [0, 1], "subfold": 4, "submodul": [2, 6, 11], "subpackag": [2, 6], "subsequ": [6, 11], "subset": [0, 1, 2, 4], "suffix": [0, 1], "suit": 4, "summar": [5, 10, 11], "summari": [1, 8, 9, 10, 11], "support": [0, 4, 7, 8, 9, 10, 11], "sure": [4, 6], "sy": 1, "synthet": 3, "t": [0, 1, 8, 9, 10, 11], "tabl": [0, 3, 5, 8, 9, 11], "tag": 4, "take": [1, 3], "taken": 4, "tar": 4, "target": 0, "temp": 0, "temp_column_nam": [0, 2, 6], "temp_id": [8, 10, 11], "templat": [0, 1], "temporari": [0, 8, 10, 11], "test": [6, 7, 8, 10, 11], "textio": 1, "textiowrapp": 1, "than": [0, 5, 6], "thei": [4, 9, 10], "them": 8, "therefor": 10, "thi": [0, 1, 4, 5, 6, 8, 9, 10, 11], "thing": 9, "third": [8, 10, 11], "though": 5, "time": [3, 6], "tldr": 6, "toler": [0, 1, 8, 9, 10, 11], "toml": 4, "toni": [8, 10, 11], "top": 9, "total": [8, 9, 10, 11], "track": [0, 1], "transform": 1, "treat": [1, 10], "tri": [0, 1, 3, 9], "trigger": [0, 1], "true": [0, 1, 4, 8, 9, 10, 11], "try": [8, 9, 10, 11], "tune": 3, "tupl": 1, "tweak": [0, 6], "twine": 4, "two": [0, 1, 5, 6, 8, 9, 10, 11], "txt": 1, "type": [0, 1, 4, 8, 9, 10, 11], "ultim": 1, "under": [4, 6, 11], "understand": 3, "unequ": [8, 9, 10, 11], "unexpect": [9, 10], "unifi": [5, 6], "union": 0, "uniqu": [0, 1, 8, 10, 11], "unit": 6, "unittest": 4, "unlik": 9, "unq_column": [0, 2, 5, 6], "up": [1, 4, 8], "updat": 4, "upgrad": [4, 7], "upload": 4, "url": 4, "us": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11], "usag": 6, "user": [0, 1, 3, 4], "usernam": 4, "utf": 1, "util": 4, "v0": [6, 9, 11], "valid": [0, 4], "valu": [0, 1, 8, 9, 10, 11], "valueerror": 8, "vanilla": 0, "variabl": [0, 1, 4], "vast": 3, "ve": 3, "veri": [3, 8, 9], "versa": [0, 1], "version": [0, 1, 3, 4, 5, 9, 11], "via": [4, 5, 6], "vice": [0, 1], "virtual": 7, "virtualenv": 6, "w": 1, "wa": [0, 1, 3, 6, 11], "wai": [0, 1, 5, 6, 10], "want": [4, 5], "warehous": 4, "we": [3, 4, 5, 6, 10, 11], "welcom": [3, 6], "what": [0, 1, 6, 8], "wheel": 4, "when": [0, 1, 3, 4, 8], "where": [0, 1, 4], "whether": [0, 1, 8], "which": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "while": 1, "whitespac": [0, 1], "whl": 4, "wide": 1, "wisdom": 4, "wise": [0, 1], "wish": [6, 11], "within": [0, 1, 6, 8, 10, 11], "without": [0, 1], "wonder": [8, 10, 11], "work": [1, 4, 6, 7], "workflow": 4, "world": 1, "would": [1, 6], "write": 1, "x": [0, 1], "y": 1, "ye": [8, 9], "yield": 9, "you": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11], "your": [1, 4, 6, 8, 9, 10, 11], "zero": 0}, "titles": ["datacompy package", "datacompy.spark package", "datacompy", "Benchmarks", "Developer Instructions", "Fugue Detail", "DataComPy", "Installation", "Pandas Usage", "Polars Usage", "Snowpark/Snowflake Usage", "Spark Usage"], "titleterms": {"The": 3, "addit": 10, "api": 6, "archiv": 4, "backend": 6, "base": 0, "basic": [5, 7, 9], "benchmark": 3, "caveat": [8, 9], "commit": 4, "compar": [5, 8, 9], "conda": 7, "consider": 10, "content": [0, 1, 6], "contributor": 6, "conveni": [8, 9, 10, 11], "core": 0, "cross": 5, "data": 3, "datacompi": [0, 1, 2, 6], "datafram": 10, "db": 10, "depend": 7, "dependnci": 6, "deprec": 6, "detail": 5, "develop": 4, "distribut": 4, "document": 4, "duplic": [8, 9, 10, 11], "edgetest": 4, "extra": 6, "forg": 7, "from": 7, "fugu": [0, 5], "full": 10, "futur": 5, "gener": 4, "guid": 4, "hook": 4, "how": 5, "indic": 6, "instal": [6, 7], "instruct": 4, "legaci": [1, 6], "limit": [8, 9], "manag": 4, "method": [8, 9, 10, 11], "modul": [0, 1], "name": 10, "object": [8, 9, 10], "overview": [8, 9], "packag": [0, 1], "panda": [1, 8], "polar": [0, 9], "pre": 4, "provid": 10, "pypi": [4, 7], "quick": 6, "refer": 6, "releas": [4, 5], "report": [8, 9, 10, 11], "requir": 4, "roadmap": 6, "row": [8, 9, 10, 11], "run": 4, "schema": 10, "setup": [3, 8, 9, 10], "snowflak": [0, 4, 10], "snowflakecompar": 10, "snowpark": 10, "spark": [1, 6, 11], "sparkpandascompar": 6, "sparksqlcompar": 11, "sql": 1, "submodul": [0, 1], "subpackag": 0, "support": 6, "tabl": [6, 10], "table_nam": 10, "test": 4, "tldr": 3, "unit": 4, "us": 3, "usag": [5, 8, 9, 10, 11], "valid": 10, "version": 6, "virtualenv": 7, "work": 5}}) \ No newline at end of file +Search.setIndex({"alltitles": {"API Reference": [[6, null]], "Additional considerations": [[10, "additional-considerations"]], "Basic Usage": [[5, "basic-usage"], [9, "basic-usage"]], "Benchmarks": [[3, null]], "Caveats": [[8, "caveats"]], "Caveats and Limitations": [[9, "caveats-and-limitations"]], "Compare Object Setup": [[8, "compare-object-setup"], [9, "compare-object-setup"]], "Contents": [[6, "contents"]], "Contributors": [[6, "contributors"]], "Convenience Methods": [[8, "convenience-methods"], [9, "convenience-methods"], [10, "convenience-methods"], [11, "convenience-methods"]], "Cross Comparing": [[5, "cross-comparing"]], "DataComPy": [[6, null]], "Developer Instructions": [[4, null]], "Duplicate rows": [[8, "duplicate-rows"], [9, "duplicate-rows"], [10, "duplicate-rows"], [11, "duplicate-rows"]], "Fugue Detail": [[5, null]], "Future releases": [[5, "future-releases"]], "Generating Documentation": [[4, "generating-documentation"]], "Generating distribution archives (PyPI)": [[4, "generating-distribution-archives-pypi"]], "How it works": [[5, "how-it-works"]], "Indices and tables": [[6, "indices-and-tables"]], "Installation": [[7, null]], "Installing extras": [[6, "installing-extras"]], "Legacy Spark Deprecation": [[6, "legacy-spark-deprecation"]], "Limitations": [[8, "limitations"]], "Management of Requirements": [[4, "management-of-requirements"]], "Module contents": [[0, "module-datacompy"], [1, "module-datacompy.spark"]], "Overview": [[8, "overview"], [9, "overview"]], "Pandas Usage": [[8, null]], "Polars Usage": [[9, null]], "Pre-Commit Hooks": [[4, "pre-commit-hooks"]], "Provide Snowpark dataframes": [[10, "provide-snowpark-dataframes"]], "Provide the full name (db.schema.table_name) of valid Snowflake tables": [[10, "provide-the-full-name-db-schema-table-name-of-valid-snowflake-tables"]], "PyPI (basic)": [[7, "pypi-basic"]], "Quick Installation": [[6, "quick-installation"]], "Release Guide": [[4, "release-guide"]], "Reports": [[8, "reports"], [9, "reports"], [10, "reports"], [11, "reports"]], "Roadmap": [[6, "roadmap"]], "Run unit tests": [[4, "run-unit-tests"]], "Setup used": [[3, "setup-used"]], "Snowflake testing": [[4, "snowflake-testing"]], "SnowflakeCompare setup": [[10, "snowflakecompare-setup"]], "Snowpark/Snowflake Usage": [[10, null]], "Spark Usage": [[11, null]], "SparkPandasCompare Deprecation": [[6, "sparkpandascompare-deprecation"]], "SparkSQLCompare": [[11, "sparksqlcompare"]], "Submodules": [[0, "submodules"], [1, "submodules"]], "Subpackages": [[0, "subpackages"]], "Supported backends": [[6, "supported-backends"]], "Supported versions and dependncies": [[6, "supported-versions-and-dependncies"]], "TLDR": [[3, "tldr"]], "The Data": [[3, "the-data"]], "conda (installs dependencies from Conda Forge)": [[7, "conda-installs-dependencies-from-conda-forge"]], "datacompy": [[2, null]], "datacompy package": [[0, null]], "datacompy.base module": [[0, "module-datacompy.base"]], "datacompy.core module": [[0, "module-datacompy.core"]], "datacompy.fugue module": [[0, "module-datacompy.fugue"]], "datacompy.polars module": [[0, "module-datacompy.polars"]], "datacompy.snowflake module": [[0, "module-datacompy.snowflake"]], "datacompy.spark package": [[1, null]], "datacompy.spark.legacy module": [[1, "module-datacompy.spark.legacy"]], "datacompy.spark.pandas module": [[1, "module-datacompy.spark.pandas"]], "datacompy.spark.sql module": [[1, "module-datacompy.spark.sql"]], "edgetest": [[4, "edgetest"]], "virtualenv (install dependencies from PyPI)": [[7, "virtualenv-install-dependencies-from-pypi"]]}, "docnames": ["api/datacompy", "api/datacompy.spark", "api/modules", "benchmark", "developer_instructions", "fugue_usage", "index", "install", "pandas_usage", "polars_usage", "snowflake_usage", "spark_usage"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["api/datacompy.rst", "api/datacompy.spark.rst", "api/modules.rst", "benchmark.rst", "developer_instructions.rst", "fugue_usage.rst", "index.rst", "install.rst", "pandas_usage.rst", "polars_usage.rst", "snowflake_usage.rst", "spark_usage.rst"], "indexentries": {"all_columns_match() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.all_columns_match", false]], "all_columns_match() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.all_columns_match", false]], "all_columns_match() (datacompy.compare method)": [[0, "datacompy.Compare.all_columns_match", false]], "all_columns_match() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.all_columns_match", false]], "all_columns_match() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.all_columns_match", false]], "all_columns_match() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.all_columns_match", false]], "all_columns_match() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.all_columns_match", false]], "all_columns_match() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.all_columns_match", false]], "all_columns_match() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.all_columns_match", false]], "all_columns_match() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.all_columns_match", false]], "all_columns_match() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.all_columns_match", false]], "all_columns_match() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.all_columns_match", false]], "all_columns_match() (in module datacompy)": [[0, "datacompy.all_columns_match", false]], "all_columns_match() (in module datacompy.fugue)": [[0, "datacompy.fugue.all_columns_match", false]], "all_mismatch() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.all_mismatch", false]], "all_mismatch() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.all_mismatch", false]], "all_mismatch() (datacompy.compare method)": [[0, "datacompy.Compare.all_mismatch", false]], "all_mismatch() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.all_mismatch", false]], "all_mismatch() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.all_mismatch", false]], "all_mismatch() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.all_mismatch", false]], "all_mismatch() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.all_mismatch", false]], "all_mismatch() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.all_mismatch", false]], "all_mismatch() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.all_mismatch", false]], "all_mismatch() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.all_mismatch", false]], "all_mismatch() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.all_mismatch", false]], "all_mismatch() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.all_mismatch", false]], "all_rows_overlap() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.compare method)": [[0, "datacompy.Compare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.all_rows_overlap", false]], "all_rows_overlap() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.all_rows_overlap", false]], "all_rows_overlap() (in module datacompy)": [[0, "datacompy.all_rows_overlap", false]], "all_rows_overlap() (in module datacompy.fugue)": [[0, "datacompy.fugue.all_rows_overlap", false]], "base_row_count (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.base_row_count", false]], "basecompare (class in datacompy)": [[0, "datacompy.BaseCompare", false]], "basecompare (class in datacompy.base)": [[0, "datacompy.base.BaseCompare", false]], "calculate_max_diff() (in module datacompy)": [[0, "datacompy.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.core)": [[0, "datacompy.core.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.polars)": [[0, "datacompy.polars.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.calculate_max_diff", false]], "calculate_max_diff() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.calculate_max_diff", false]], "calculate_null_diff() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.calculate_null_diff", false]], "calculate_null_diff() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.calculate_null_diff", false]], "columns_compared (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_compared", false]], "columns_equal() (in module datacompy)": [[0, "datacompy.columns_equal", false]], "columns_equal() (in module datacompy.core)": [[0, "datacompy.core.columns_equal", false]], "columns_equal() (in module datacompy.polars)": [[0, "datacompy.polars.columns_equal", false]], "columns_equal() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.columns_equal", false]], "columns_equal() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.columns_equal", false]], "columns_equal() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.columns_equal", false]], "columns_in_both (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_in_both", false]], "columns_only_base (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_only_base", false]], "columns_only_compare (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.columns_only_compare", false]], "common_row_count (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.common_row_count", false]], "compare (class in datacompy)": [[0, "datacompy.Compare", false]], "compare (class in datacompy.core)": [[0, "datacompy.core.Compare", false]], "compare_row_count (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.compare_row_count", false]], "compare_string_and_date_columns() (in module datacompy)": [[0, "datacompy.compare_string_and_date_columns", false]], "compare_string_and_date_columns() (in module datacompy.core)": [[0, "datacompy.core.compare_string_and_date_columns", false]], "compare_string_and_date_columns() (in module datacompy.polars)": [[0, "datacompy.polars.compare_string_and_date_columns", false]], "compare_string_and_date_columns() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.compare_string_and_date_columns", false]], "count_matching_rows() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.compare method)": [[0, "datacompy.Compare.count_matching_rows", false]], "count_matching_rows() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.count_matching_rows", false]], "count_matching_rows() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.count_matching_rows", false]], "count_matching_rows() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.count_matching_rows", false]], "count_matching_rows() (in module datacompy)": [[0, "datacompy.count_matching_rows", false]], "count_matching_rows() (in module datacompy.fugue)": [[0, "datacompy.fugue.count_matching_rows", false]], "datacompy": [[0, "module-datacompy", false]], "datacompy.base": [[0, "module-datacompy.base", false]], "datacompy.core": [[0, "module-datacompy.core", false]], "datacompy.fugue": [[0, "module-datacompy.fugue", false]], "datacompy.polars": [[0, "module-datacompy.polars", false]], "datacompy.snowflake": [[0, "module-datacompy.snowflake", false]], "datacompy.spark": [[1, "module-datacompy.spark", false]], "datacompy.spark.legacy": [[1, "module-datacompy.spark.legacy", false]], "datacompy.spark.pandas": [[1, "module-datacompy.spark.pandas", false]], "datacompy.spark.sql": [[1, "module-datacompy.spark.sql", false]], "decimal_comparator() (in module datacompy.spark.legacy)": [[1, "datacompy.spark.legacy.decimal_comparator", false]], "decimal_comparator() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.decimal_comparator", false]], "df1 (datacompy.base.basecompare property)": [[0, "datacompy.base.BaseCompare.df1", false]], "df1 (datacompy.basecompare property)": [[0, "datacompy.BaseCompare.df1", false]], "df1 (datacompy.compare property)": [[0, "datacompy.Compare.df1", false]], "df1 (datacompy.core.compare property)": [[0, "datacompy.core.Compare.df1", false]], "df1 (datacompy.polars.polarscompare property)": [[0, "datacompy.polars.PolarsCompare.df1", false]], "df1 (datacompy.polarscompare property)": [[0, "datacompy.PolarsCompare.df1", false]], "df1 (datacompy.snowflake.snowflakecompare property)": [[0, "datacompy.snowflake.SnowflakeCompare.df1", false]], "df1 (datacompy.snowflakecompare property)": [[0, "datacompy.SnowflakeCompare.df1", false]], "df1 (datacompy.spark.pandas.sparkpandascompare property)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df1", false]], "df1 (datacompy.spark.sql.sparksqlcompare property)": [[1, "datacompy.spark.sql.SparkSQLCompare.df1", false]], "df1 (datacompy.sparkpandascompare property)": [[0, "datacompy.SparkPandasCompare.df1", false]], "df1 (datacompy.sparksqlcompare property)": [[0, "datacompy.SparkSQLCompare.df1", false]], "df1_unq_columns() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.compare method)": [[0, "datacompy.Compare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.df1_unq_columns", false]], "df1_unq_columns() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.df1_unq_columns", false]], "df2 (datacompy.base.basecompare property)": [[0, "datacompy.base.BaseCompare.df2", false]], "df2 (datacompy.basecompare property)": [[0, "datacompy.BaseCompare.df2", false]], "df2 (datacompy.compare property)": [[0, "datacompy.Compare.df2", false]], "df2 (datacompy.core.compare property)": [[0, "datacompy.core.Compare.df2", false]], "df2 (datacompy.polars.polarscompare property)": [[0, "datacompy.polars.PolarsCompare.df2", false]], "df2 (datacompy.polarscompare property)": [[0, "datacompy.PolarsCompare.df2", false]], "df2 (datacompy.snowflake.snowflakecompare property)": [[0, "datacompy.snowflake.SnowflakeCompare.df2", false]], "df2 (datacompy.snowflakecompare property)": [[0, "datacompy.SnowflakeCompare.df2", false]], "df2 (datacompy.spark.pandas.sparkpandascompare property)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df2", false]], "df2 (datacompy.spark.sql.sparksqlcompare property)": [[1, "datacompy.spark.sql.SparkSQLCompare.df2", false]], "df2 (datacompy.sparkpandascompare property)": [[0, "datacompy.SparkPandasCompare.df2", false]], "df2 (datacompy.sparksqlcompare property)": [[0, "datacompy.SparkSQLCompare.df2", false]], "df2_unq_columns() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.compare method)": [[0, "datacompy.Compare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.df2_unq_columns", false]], "df2_unq_columns() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.df2_unq_columns", false]], "generate_id_within_group() (in module datacompy)": [[0, "datacompy.generate_id_within_group", false]], "generate_id_within_group() (in module datacompy.core)": [[0, "datacompy.core.generate_id_within_group", false]], "generate_id_within_group() (in module datacompy.polars)": [[0, "datacompy.polars.generate_id_within_group", false]], "generate_id_within_group() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.generate_id_within_group", false]], "get_merged_columns() (in module datacompy)": [[0, "datacompy.get_merged_columns", false]], "get_merged_columns() (in module datacompy.core)": [[0, "datacompy.core.get_merged_columns", false]], "get_merged_columns() (in module datacompy.polars)": [[0, "datacompy.polars.get_merged_columns", false]], "get_merged_columns() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.get_merged_columns", false]], "get_merged_columns() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.get_merged_columns", false]], "get_merged_columns() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.get_merged_columns", false]], "intersect_columns() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.intersect_columns", false]], "intersect_columns() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.intersect_columns", false]], "intersect_columns() (datacompy.compare method)": [[0, "datacompy.Compare.intersect_columns", false]], "intersect_columns() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.intersect_columns", false]], "intersect_columns() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.intersect_columns", false]], "intersect_columns() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.intersect_columns", false]], "intersect_columns() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.intersect_columns", false]], "intersect_columns() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.intersect_columns", false]], "intersect_columns() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.intersect_columns", false]], "intersect_columns() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.intersect_columns", false]], "intersect_columns() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.intersect_columns", false]], "intersect_columns() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.intersect_columns", false]], "intersect_columns() (in module datacompy)": [[0, "datacompy.intersect_columns", false]], "intersect_columns() (in module datacompy.fugue)": [[0, "datacompy.fugue.intersect_columns", false]], "intersect_rows_match() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.compare method)": [[0, "datacompy.Compare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.intersect_rows_match", false]], "intersect_rows_match() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.intersect_rows_match", false]], "is_match() (in module datacompy)": [[0, "datacompy.is_match", false]], "is_match() (in module datacompy.fugue)": [[0, "datacompy.fugue.is_match", false]], "known_difference (datacompy.spark.legacy.matchtype attribute)": [[1, "datacompy.spark.legacy.MatchType.KNOWN_DIFFERENCE", false]], "legacysparkcompare (class in datacompy.spark.legacy)": [[1, "datacompy.spark.legacy.LegacySparkCompare", false]], "match (datacompy.spark.legacy.matchtype attribute)": [[1, "datacompy.spark.legacy.MatchType.MATCH", false]], "matches() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.matches", false]], "matches() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.matches", false]], "matches() (datacompy.compare method)": [[0, "datacompy.Compare.matches", false]], "matches() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.matches", false]], "matches() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.matches", false]], "matches() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.matches", false]], "matches() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.matches", false]], "matches() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.matches", false]], "matches() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.matches", false]], "matches() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.matches", false]], "matches() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.matches", false]], "matches() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.matches", false]], "matchtype (class in datacompy.spark.legacy)": [[1, "datacompy.spark.legacy.MatchType", false]], "mismatch (datacompy.spark.legacy.matchtype attribute)": [[1, "datacompy.spark.legacy.MatchType.MISMATCH", false]], "module": [[0, "module-datacompy", false], [0, "module-datacompy.base", false], [0, "module-datacompy.core", false], [0, "module-datacompy.fugue", false], [0, "module-datacompy.polars", false], [0, "module-datacompy.snowflake", false], [1, "module-datacompy.spark", false], [1, "module-datacompy.spark.legacy", false], [1, "module-datacompy.spark.pandas", false], [1, "module-datacompy.spark.sql", false]], "polarscompare (class in datacompy)": [[0, "datacompy.PolarsCompare", false]], "polarscompare (class in datacompy.polars)": [[0, "datacompy.polars.PolarsCompare", false]], "render() (in module datacompy)": [[0, "datacompy.render", false]], "render() (in module datacompy.core)": [[0, "datacompy.core.render", false]], "render() (in module datacompy.polars)": [[0, "datacompy.polars.render", false]], "render() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.render", false]], "render() (in module datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.render", false]], "render() (in module datacompy.spark.sql)": [[1, "datacompy.spark.sql.render", false]], "report() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.report", false]], "report() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.report", false]], "report() (datacompy.compare method)": [[0, "datacompy.Compare.report", false]], "report() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.report", false]], "report() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.report", false]], "report() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.report", false]], "report() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.report", false]], "report() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.report", false]], "report() (datacompy.spark.legacy.legacysparkcompare method)": [[1, "datacompy.spark.legacy.LegacySparkCompare.report", false]], "report() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.report", false]], "report() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.report", false]], "report() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.report", false]], "report() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.report", false]], "report() (in module datacompy)": [[0, "datacompy.report", false]], "report() (in module datacompy.fugue)": [[0, "datacompy.fugue.report", false]], "rows_both_all (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_both_all", false]], "rows_both_mismatch (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_both_mismatch", false]], "rows_only_base (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_only_base", false]], "rows_only_compare (datacompy.spark.legacy.legacysparkcompare property)": [[1, "datacompy.spark.legacy.LegacySparkCompare.rows_only_compare", false]], "sample_mismatch() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.compare method)": [[0, "datacompy.Compare.sample_mismatch", false]], "sample_mismatch() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.sample_mismatch", false]], "sample_mismatch() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.sample_mismatch", false]], "sample_mismatch() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.sample_mismatch", false]], "snowflakecompare (class in datacompy)": [[0, "datacompy.SnowflakeCompare", false]], "snowflakecompare (class in datacompy.snowflake)": [[0, "datacompy.snowflake.SnowflakeCompare", false]], "sparkpandascompare (class in datacompy)": [[0, "datacompy.SparkPandasCompare", false]], "sparkpandascompare (class in datacompy.spark.pandas)": [[1, "datacompy.spark.pandas.SparkPandasCompare", false]], "sparksqlcompare (class in datacompy)": [[0, "datacompy.SparkSQLCompare", false]], "sparksqlcompare (class in datacompy.spark.sql)": [[1, "datacompy.spark.sql.SparkSQLCompare", false]], "subset() (datacompy.base.basecompare method)": [[0, "datacompy.base.BaseCompare.subset", false]], "subset() (datacompy.basecompare method)": [[0, "datacompy.BaseCompare.subset", false]], "subset() (datacompy.compare method)": [[0, "datacompy.Compare.subset", false]], "subset() (datacompy.core.compare method)": [[0, "datacompy.core.Compare.subset", false]], "subset() (datacompy.polars.polarscompare method)": [[0, "datacompy.polars.PolarsCompare.subset", false]], "subset() (datacompy.polarscompare method)": [[0, "datacompy.PolarsCompare.subset", false]], "subset() (datacompy.snowflake.snowflakecompare method)": [[0, "datacompy.snowflake.SnowflakeCompare.subset", false]], "subset() (datacompy.snowflakecompare method)": [[0, "datacompy.SnowflakeCompare.subset", false]], "subset() (datacompy.spark.pandas.sparkpandascompare method)": [[1, "datacompy.spark.pandas.SparkPandasCompare.subset", false]], "subset() (datacompy.spark.sql.sparksqlcompare method)": [[1, "datacompy.spark.sql.SparkSQLCompare.subset", false]], "subset() (datacompy.sparkpandascompare method)": [[0, "datacompy.SparkPandasCompare.subset", false]], "subset() (datacompy.sparksqlcompare method)": [[0, "datacompy.SparkSQLCompare.subset", false]], "temp_column_name() (in module datacompy)": [[0, "datacompy.temp_column_name", false]], "temp_column_name() (in module datacompy.base)": [[0, "datacompy.base.temp_column_name", false]], "temp_column_name() (in module datacompy.snowflake)": [[0, "datacompy.snowflake.temp_column_name", false]], "unq_columns() (in module datacompy)": [[0, "datacompy.unq_columns", false]], "unq_columns() (in module datacompy.fugue)": [[0, "datacompy.fugue.unq_columns", false]]}, "objects": {"": [[0, 0, 0, "-", "datacompy"]], "datacompy": [[0, 1, 1, "", "BaseCompare"], [0, 1, 1, "", "Compare"], [0, 1, 1, "", "PolarsCompare"], [0, 1, 1, "", "SnowflakeCompare"], [0, 1, 1, "", "SparkPandasCompare"], [0, 1, 1, "", "SparkSQLCompare"], [0, 4, 1, "", "all_columns_match"], [0, 4, 1, "", "all_rows_overlap"], [0, 0, 0, "-", "base"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "compare_string_and_date_columns"], [0, 0, 0, "-", "core"], [0, 4, 1, "", "count_matching_rows"], [0, 0, 0, "-", "fugue"], [0, 4, 1, "", "generate_id_within_group"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "intersect_columns"], [0, 4, 1, "", "is_match"], [0, 0, 0, "-", "polars"], [0, 4, 1, "", "render"], [0, 4, 1, "", "report"], [0, 0, 0, "-", "snowflake"], [1, 0, 0, "-", "spark"], [0, 4, 1, "", "temp_column_name"], [0, 4, 1, "", "unq_columns"]], "datacompy.BaseCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.Compare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.PolarsCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.SnowflakeCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.SparkPandasCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.SparkSQLCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.base": [[0, 1, 1, "", "BaseCompare"], [0, 4, 1, "", "temp_column_name"]], "datacompy.base.BaseCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.core": [[0, 1, 1, "", "Compare"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "compare_string_and_date_columns"], [0, 4, 1, "", "generate_id_within_group"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "render"]], "datacompy.core.Compare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.fugue": [[0, 4, 1, "", "all_columns_match"], [0, 4, 1, "", "all_rows_overlap"], [0, 4, 1, "", "count_matching_rows"], [0, 4, 1, "", "intersect_columns"], [0, 4, 1, "", "is_match"], [0, 4, 1, "", "report"], [0, 4, 1, "", "unq_columns"]], "datacompy.polars": [[0, 1, 1, "", "PolarsCompare"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "compare_string_and_date_columns"], [0, 4, 1, "", "generate_id_within_group"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "render"]], "datacompy.polars.PolarsCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.snowflake": [[0, 1, 1, "", "SnowflakeCompare"], [0, 4, 1, "", "calculate_max_diff"], [0, 4, 1, "", "calculate_null_diff"], [0, 4, 1, "", "columns_equal"], [0, 4, 1, "", "get_merged_columns"], [0, 4, 1, "", "render"], [0, 4, 1, "", "temp_column_name"]], "datacompy.snowflake.SnowflakeCompare": [[0, 2, 1, "", "all_columns_match"], [0, 2, 1, "", "all_mismatch"], [0, 2, 1, "", "all_rows_overlap"], [0, 2, 1, "", "count_matching_rows"], [0, 3, 1, "", "df1"], [0, 2, 1, "", "df1_unq_columns"], [0, 3, 1, "", "df2"], [0, 2, 1, "", "df2_unq_columns"], [0, 2, 1, "", "intersect_columns"], [0, 2, 1, "", "intersect_rows_match"], [0, 2, 1, "", "matches"], [0, 2, 1, "", "report"], [0, 2, 1, "", "sample_mismatch"], [0, 2, 1, "", "subset"]], "datacompy.spark": [[1, 0, 0, "-", "legacy"], [1, 0, 0, "-", "pandas"], [1, 0, 0, "-", "sql"]], "datacompy.spark.legacy": [[1, 1, 1, "", "LegacySparkCompare"], [1, 1, 1, "", "MatchType"], [1, 4, 1, "", "decimal_comparator"]], "datacompy.spark.legacy.LegacySparkCompare": [[1, 3, 1, "", "base_row_count"], [1, 3, 1, "", "columns_compared"], [1, 3, 1, "", "columns_in_both"], [1, 3, 1, "", "columns_only_base"], [1, 3, 1, "", "columns_only_compare"], [1, 3, 1, "", "common_row_count"], [1, 3, 1, "", "compare_row_count"], [1, 2, 1, "", "report"], [1, 3, 1, "", "rows_both_all"], [1, 3, 1, "", "rows_both_mismatch"], [1, 3, 1, "", "rows_only_base"], [1, 3, 1, "", "rows_only_compare"]], "datacompy.spark.legacy.MatchType": [[1, 5, 1, "", "KNOWN_DIFFERENCE"], [1, 5, 1, "", "MATCH"], [1, 5, 1, "", "MISMATCH"]], "datacompy.spark.pandas": [[1, 1, 1, "", "SparkPandasCompare"], [1, 4, 1, "", "calculate_max_diff"], [1, 4, 1, "", "columns_equal"], [1, 4, 1, "", "compare_string_and_date_columns"], [1, 4, 1, "", "generate_id_within_group"], [1, 4, 1, "", "get_merged_columns"], [1, 4, 1, "", "render"]], "datacompy.spark.pandas.SparkPandasCompare": [[1, 2, 1, "", "all_columns_match"], [1, 2, 1, "", "all_mismatch"], [1, 2, 1, "", "all_rows_overlap"], [1, 2, 1, "", "count_matching_rows"], [1, 3, 1, "", "df1"], [1, 2, 1, "", "df1_unq_columns"], [1, 3, 1, "", "df2"], [1, 2, 1, "", "df2_unq_columns"], [1, 2, 1, "", "intersect_columns"], [1, 2, 1, "", "intersect_rows_match"], [1, 2, 1, "", "matches"], [1, 2, 1, "", "report"], [1, 2, 1, "", "sample_mismatch"], [1, 2, 1, "", "subset"]], "datacompy.spark.sql": [[1, 1, 1, "", "SparkSQLCompare"], [1, 4, 1, "", "calculate_max_diff"], [1, 4, 1, "", "calculate_null_diff"], [1, 4, 1, "", "columns_equal"], [1, 4, 1, "", "decimal_comparator"], [1, 4, 1, "", "get_merged_columns"], [1, 4, 1, "", "render"]], "datacompy.spark.sql.SparkSQLCompare": [[1, 2, 1, "", "all_columns_match"], [1, 2, 1, "", "all_mismatch"], [1, 2, 1, "", "all_rows_overlap"], [1, 2, 1, "", "count_matching_rows"], [1, 3, 1, "", "df1"], [1, 2, 1, "", "df1_unq_columns"], [1, 3, 1, "", "df2"], [1, 2, 1, "", "df2_unq_columns"], [1, 2, 1, "", "intersect_columns"], [1, 2, 1, "", "intersect_rows_match"], [1, 2, 1, "", "matches"], [1, 2, 1, "", "report"], [1, 2, 1, "", "sample_mismatch"], [1, 2, 1, "", "subset"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "property", "Python property"], "4": ["py", "function", "Python function"], "5": ["py", "attribute", "Python attribute"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:property", "4": "py:function", "5": "py:attribute"}, "terms": {"": [0, 1, 6, 8, 9, 11], "0": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "000": [3, 8, 9, 10, 11], "0000": [8, 9, 10, 11], "0001": [8, 9], "0005": [8, 9, 10, 11], "01": [5, 8, 9, 10, 11], "025": 3, "03": 10, "04": 10, "041": 3, "05": [5, 8, 9, 10, 11], "0500": [8, 9, 10, 11], "0701": 3, "1": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "10": [0, 1, 3, 5, 6, 8, 9, 10, 11], "100": [1, 3], "1000": 3, "10000001234": [5, 8, 9, 10, 11], "10000001235": [5, 8, 9, 10, 11], "10000001236": [5, 8, 9, 10, 11], "10000001237": [5, 8, 9, 10, 11], "10000001238": [5, 8, 9, 10, 11], "10000001239": [5, 10, 11], "109": 3, "11": [3, 6, 9], "111": [5, 8, 9, 10, 11], "1113": 3, "12": [5, 6, 7, 8, 9, 10, 11], "120": 3, "123": [5, 8, 9, 10, 11], "123456": [5, 8, 9, 10, 11], "1257": 3, "127": 3, "13": [6, 11], "130": 3, "1345": [5, 8, 9, 10, 11], "14": [0, 6, 11], "14530": [5, 8, 9, 10, 11], "15": 3, "155": [5, 8, 9, 10, 11], "1555": [5, 8, 9, 10, 11], "16": 3, "16777216": 10, "17": 3, "175": 3, "18": 3, "193": 3, "194": 3, "196": 3, "1e": 10, "2": [0, 1, 3, 6, 8, 9, 10, 11], "20": 3, "2017": [5, 8, 9, 10, 11], "21": 4, "2185": 3, "234": 3, "262": 3, "2763": 3, "2838": 3, "3": [3, 4, 6, 7, 8, 9, 10, 11], "304": 3, "31": 3, "3112": 3, "3204": 3, "32gb": 3, "330": 3, "345": [5, 8, 9, 10, 11], "4": [5, 6, 8, 9, 10, 11], "45": [5, 8, 9, 10, 11], "455": 3, "47": 3, "494": 3, "5": [4, 6, 8, 9, 10, 11], "50": 3, "500": 3, "560": 3, "57": 3, "5735": 3, "578": 3, "6": [3, 4, 8, 9, 10, 11], "6094": 3, "62": 3, "6274": 3, "64gb": 3, "7": [4, 8], "743": 3, "8": [1, 3, 9], "804": 3, "827": 3, "9": [6, 7], "90": 3, "94": 3, "96": 3, "9814": 3, "A": [0, 1, 4, 7, 8, 9, 10, 11], "And": [8, 10, 11], "As": [0, 9], "At": 6, "By": [1, 6], "For": [4, 5, 8, 9, 10, 11], "If": [0, 1, 3, 6, 7, 8, 10, 11], "In": [4, 5, 8], "It": [3, 4, 6, 8, 10, 11], "No": [10, 11], "OR": [8, 9], "The": [0, 1, 4, 5, 6, 8, 9, 11], "Then": [0, 4, 6], "There": [8, 9, 10, 11], "To": [6, 11], "Will": [0, 1], "With": [5, 6, 11], "_df1": [0, 1], "_io": 1, "_merge_left": 11, "_merge_right": 11, "_temp_x": 0, "ab": [0, 1], "abc": 0, "abl": 3, "about": [4, 8], "abov": [4, 6, 7, 8, 9, 10, 11], "abs_tol": [0, 1, 5, 8, 9, 10, 11], "absolut": [0, 1, 8, 9, 10, 11], "abstract": 0, "accept": [6, 11], "access": [4, 5], "account": 4, "acct_id": [5, 8, 9, 10, 11], "acct_id_df1": [10, 11], "acct_id_df2": [10, 11], "accur": [0, 6], "achiev": 5, "across": [5, 6], "action": 4, "activ": [4, 7], "actual": [0, 1], "ad": [0, 1, 4], "add": 7, "addit": [4, 6], "adher": 6, "adopt": 5, "after": [0, 4, 8, 9, 10, 11], "again": [8, 10, 11], "against": [1, 10], "aggreg": 5, "agreement": 6, "align": [6, 11], "all": [0, 1, 4, 6, 7, 8, 9, 10, 11], "all_columns_match": [0, 1, 2, 5, 6], "all_mismatch": [0, 1, 2], "all_rows_overlap": [0, 1, 2, 5, 6], "allow": [0, 1], "alongsid": 0, "alreadi": [1, 8], "also": [1, 4, 5, 6, 8, 9, 11], "alwai": 3, "amount": [0, 1, 3], "an": [0, 1, 3, 9, 10], "ani": [0, 1, 4, 6, 8, 9, 10, 11], "anoth": [0, 1], "anydatafram": 0, "apach": 9, "api": [4, 11], "apidoc": 4, "append": [0, 1], "appli": [0, 1], "appreci": 6, "ar": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11], "archiv": 6, "arr1": 8, "arr2": 8, "arrow": [5, 6, 9], "artifact": 4, "ask": 6, "assert_almost_equ": 8, "assert_array_equ": 8, "assert_frame_equ": 8, "assert_series_equ": 8, "attempt": [0, 1], "attribut": [10, 11], "autom": 4, "automag": [0, 1], "automat": 4, "avail": [8, 9, 10, 11], "awar": 9, "b": 1, "back": 4, "backend": 5, "background": 5, "base": [1, 2, 3, 4, 5, 6, 8], "base_column_nam": 1, "base_df": 1, "base_row_count": [0, 1], "basecompar": [0, 1, 2, 6], "basi": [1, 10], "basic": [0, 1, 6], "been": [6, 8, 9, 10, 11], "befor": [0, 1, 4, 6, 8, 10, 11], "behaviour": [6, 9, 11], "behind": [4, 8, 10, 11], "being": [1, 4], "belong": 4, "below": [4, 6], "benchmark": 6, "benefit": 5, "best": 3, "better": [6, 11], "between": [0, 1, 8], "bias": 3, "bin": 7, "black": 4, "bluth": [5, 8, 9, 10, 11], "bob": [5, 8, 9, 10, 11], "bool": [0, 1, 9], "boolean": [0, 1], "both": [0, 1], "boto3": 4, "branch": 4, "break": 4, "build": 4, "builder": [5, 10, 11], "c": 4, "cach": 1, "cache_intermedi": 1, "calculate_max_diff": [0, 1, 2, 6], "calculate_null_diff": [0, 1, 2, 6], "call": [8, 9, 10, 11], "can": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "canon": 1, "capabl": 8, "carri": [0, 6], "case": [0, 1, 5, 10], "cast": [0, 1], "cast_column_names_low": [0, 1], "caus": 1, "caveat": 6, "certain": 1, "chang": 4, "channel": 7, "check": [0, 1, 8], "checkout": 4, "choic": 8, "chose": 10, "chunk": 5, "cicd": 4, "cla": 6, "class": [0, 1, 5, 6, 8, 11], "clean": 4, "cluster": 4, "coars": 5, "code": [4, 5, 6, 9], "cogroup": 5, "col_1": [0, 1], "col_2": [0, 1], "col_match": [0, 1], "collaps": 4, "collect": 4, "column": [0, 1, 3, 5, 8, 9, 10, 11], "column_count": [0, 1], "column_map": 1, "columnar": 9, "columns_compar": [0, 1], "columns_equ": [0, 1, 2, 6], "columns_in_both": [0, 1], "columns_map": 1, "columns_only_bas": [0, 1], "columns_only_compar": [0, 1], "combin": [8, 10, 11], "come": [4, 8, 9], "command": [0, 1, 4], "commit": 6, "common": [1, 8, 9, 10, 11], "common_row_count": [0, 1], "commun": [4, 5], "compar": [0, 1, 2, 3, 4, 6, 10, 11], "compare_column_nam": 1, "compare_df": 1, "compare_row_count": [0, 1], "compare_string_and_date_column": [0, 1, 2, 6], "comparin": 1, "comparison": [0, 1, 5, 8, 9, 10, 11], "compat": [5, 6], "compris": 1, "conda": 6, "conduct": 6, "config": [7, 10], "configur": 4, "connect": [0, 4], "connection_paramet": 10, "consid": [0, 1, 9], "consider": 6, "consist": [1, 3, 5, 6, 11], "constraint": 8, "contain": [0, 1, 8], "content": 2, "continu": [6, 11], "contribut": [3, 6], "control": [0, 1], "conveni": 6, "convent": [0, 1], "convert": [0, 1, 8], "core": [2, 3, 4, 6], "correspond": [4, 5], "could": 8, "count": [0, 1], "count_matching_row": [0, 1, 2, 6], "cpu": 3, "creat": [0, 1, 3, 7, 10], "createdatafram": [5, 10, 11], "creation": [0, 1], "cross": 6, "current": [6, 8, 11], "dai": 4, "dask": [5, 6], "data": [0, 1, 5, 6, 8], "data1": [5, 8, 9, 10, 11], "data2": [5, 8, 9, 10, 11], "databas": 4, "datacompi": [4, 5, 7, 8, 9, 10, 11], "datacompy_nul": 8, "datafram": [0, 1, 3, 5, 6, 8, 9, 11], "dataset": [1, 3, 5, 8], "date": [0, 1, 4, 10], "date_fld": [5, 8, 9, 10, 11], "date_fld_df1": [10, 11], "datetim": 10, "de": 1, "decim": [0, 1], "decimal_compar": [0, 1], "decis": 4, "dedup": 1, "dedupl": [0, 1], "default": [0, 1, 4, 5, 10, 11], "defin": [1, 4], "denot": [0, 1, 4], "depend": [4, 5, 6], "dependneci": 11, "deprec": [5, 11], "describ": [1, 8], "desir": 4, "detail": [4, 6], "dev": 4, "develop": 6, "df": 0, "df1": [0, 1, 2, 5, 8, 9, 10, 11], "df1_name": [0, 1, 5, 8, 9, 11], "df1_unq_column": [0, 1, 2, 8, 9, 10, 11], "df1_unq_row": [0, 1, 8, 9, 10, 11], "df2": [0, 1, 2, 5, 8, 9, 10, 11], "df2_name": [0, 1, 5, 8, 9, 11], "df2_unq_column": [0, 1, 2, 8, 9, 10, 11], "df2_unq_row": [0, 1, 8, 9, 10, 11], "df_1": 10, "df_2": 10, "dict": 1, "dictionari": 1, "did": 3, "diff": [0, 1, 8, 9, 10, 11], "differ": [0, 1, 5, 6, 8, 9, 10, 11], "differenti": 10, "directli": [8, 10], "directori": [0, 1, 4], "disconnect": 4, "disk": 8, "displai": [0, 1], "dist": 4, "distinguish": [0, 1], "distribut": [3, 6], "dnr": 3, "do": [0, 1, 4, 5], "doc": 4, "docstr": 4, "document": [6, 9], "doe": [4, 8, 9, 10, 11], "dollar_amt": [5, 8, 9, 10, 11], "dollar_amt_df1": [10, 11], "dollar_amt_df2": [10, 11], "don": [0, 1, 8, 9, 10, 11], "done": [1, 3, 10, 11], "doubl": 10, "drop": [8, 10, 11], "dtype": [8, 9, 10, 11], "duckdb": [5, 6], "due": [3, 6, 9, 11], "dupe": 1, "duplic": 6, "e": [0, 1, 4], "each": [0, 1, 4, 5, 8, 10, 11], "easier": 4, "easili": [0, 1], "edgetest": 6, "either": [0, 10], "empti": 8, "encod": 1, "endless": 4, "engin": 9, "ensur": 4, "enter": 0, "enum": 1, "env": 7, "environ": [4, 7], "equal": [0, 1, 6, 8, 9, 10, 11], "equal_nul": 10, "equival": 5, "essenti": 10, "evalu": [0, 1], "exact": [0, 1, 10], "exactli": [0, 5, 8], "exampl": [1, 5, 8, 10, 11], "excel": 4, "except": [0, 1], "exclud": 1, "execut": [0, 1, 4], "executor": 3, "exist": [0, 1], "expect": 6, "experi": 3, "experiment": 9, "export": 4, "extend": [0, 1, 6], "extra": 4, "extract": 10, "f": 10, "f64": 9, "fail": [0, 8], "fals": [0, 1, 5, 8, 9, 10, 11], "fast": [0, 3], "favour": 5, "featur": 4, "feedback": 5, "few": [8, 9, 10, 11], "field": [0, 1, 8], "file": [0, 1], "filehandl": 1, "filenam": [0, 1], "fill": 8, "final": [4, 5], "fine": [6, 7], "first": [0, 1, 4, 8, 9, 10, 11], "fit": 8, "flag": [0, 1], "float": [0, 1, 10], "float64": [8, 9, 11], "float_fld": [5, 8, 9, 10, 11], "float_fld_df1": [10, 11], "float_fld_df2": [10, 11], "folder": 4, "follow": [4, 5, 9], "for_displai": [0, 1], "forc": 0, "forg": 6, "form": 1, "format": [0, 1, 9], "forward": [3, 6, 11], "found": 6, "frame": [0, 1], "framework": 5, "free": 4, "from": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "fugu": [2, 3, 6], "full": 5, "fulli": [0, 1], "functioanl": [6, 7], "function": [0, 1, 5, 6, 9], "further": 3, "futur": [4, 6], "gather": 5, "gener": [0, 1, 3, 6, 8, 9, 10, 11], "generate_id_within_group": [0, 1, 2, 6], "georg": [5, 8, 9, 10, 11], "get": [0, 1, 4, 5, 10], "get_merged_column": [0, 1, 2, 6], "getorcr": [5, 11], "gh": 4, "ghpage": 4, "git": 4, "github": [4, 6], "given": [1, 10], "go": [0, 1, 4], "goal": 8, "gold": 1, "good": 9, "googl": 4, "grain": 3, "great": 5, "group": [0, 1, 8, 10, 11], "grow": 0, "guarante": 5, "guid": 6, "guidanc": 4, "gz": 4, "ha": [4, 6, 8, 9, 10, 11], "handl": [0, 1, 3, 8, 9, 10, 11], "hard": 3, "have": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "help": [3, 4], "helper": 4, "here": [4, 6, 8, 9, 10, 11], "highli": 7, "honor": 6, "hook": 6, "hope": 5, "how": [0, 3, 4, 6], "html": [0, 1, 4], "html_file": [0, 1], "http": 4, "human": [0, 1, 5, 8, 10, 11], "i": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11], "i64": 9, "id": [0, 1, 3, 8, 10, 11], "idea": 3, "ident": [0, 1], "identifi": [0, 1], "ignor": [0, 1], "ignore_cas": [0, 1], "ignore_extra_column": [0, 1, 10, 11], "ignore_matching_col": [0, 1], "ignore_spac": [0, 1], "implement": [3, 5, 6, 9, 11], "implementaion": 3, "import": [5, 6, 8, 9, 10, 11], "improv": 3, "includ": [0, 1, 4], "increas": 3, "independ": 4, "index": [0, 1, 6, 8, 9], "indic": [0, 1], "individu": [0, 1], "info": 0, "initi": 8, "input": [1, 10], "insensit": 10, "instal": [4, 5], "instanc": [1, 8, 9, 11], "instanti": [1, 4], "instead": [0, 1], "instruct": 6, "int": [0, 1], "integ": 0, "integr": [5, 6], "interact": 6, "interfac": [5, 6, 9], "intermedi": 1, "intersect": [0, 1], "intersect_column": [0, 1, 2, 5, 6, 8, 9, 10, 11], "intersect_row": [0, 1, 8, 9, 10, 11], "intersect_rows_match": [0, 1, 2], "introduc": [6, 11], "io": [5, 8, 9, 11], "is_match": [0, 2, 5, 6], "isclos": [0, 1], "isn": 0, "isort": 4, "issu": [3, 6, 11], "its": [0, 1, 3, 6], "join": [0, 1, 3, 5, 8, 9, 10, 11], "join_column": [0, 1, 5, 8, 9, 10, 11], "join_nul": 9, "just": [0, 1, 4, 5, 6, 9], "keep": [4, 6, 11], "kei": 1, "kinda": [0, 1], "know": 8, "known": 1, "known_differ": [0, 1], "larg": [1, 3, 8], "lazi": 1, "legaci": [0, 2, 4, 11], "legacysparkcompar": [0, 1, 6, 11], "let": [0, 4, 6], "level": 6, "librari": [5, 6], "licens": 6, "like": [0, 4, 5, 6, 8, 9, 10, 11], "limit": 6, "list": [0, 1, 5, 8, 9, 11], "ll": 4, "loblaw": [5, 8, 9, 10, 11], "local": 4, "logic": [6, 11], "long": 10, "look": [0, 1, 8], "loos": [5, 8, 9, 10, 11], "lot": [3, 8], "lower": [0, 1], "lowest": 6, "lucil": [5, 8, 9, 10, 11], "m": 4, "machin": [3, 4], "mahari": [5, 8, 9, 10, 11], "mai": [5, 8, 9, 10], "main": [4, 8], "maintain": 5, "make": [1, 3, 4, 6], "makefil": 4, "manag": [5, 6], "mani": [5, 6], "map": 5, "match": [0, 1, 2, 6, 8, 9, 10, 11], "match_rat": 1, "matchin": 0, "matchtyp": [0, 1], "matrix": 6, "max": [0, 1, 8, 9, 10, 11], "maximum": [0, 1], "mean": [3, 4, 6], "meant": [0, 1], "medium": 3, "mediumish": 3, "memori": [1, 8, 9], "mention": 9, "merg": [0, 1, 4, 8, 10, 11], "merged_df": [0, 1], "messag": 4, "method": [5, 6], "michael": [5, 8, 9, 10, 11], "might": 9, "migrat": 9, "million": 3, "minim": 3, "mismatch": [0, 1], "mix": 0, "mode": [1, 10], "model": 9, "modul": [2, 6, 11], "montonicli": 3, "more": [0, 1, 4, 6, 8, 11], "most": [3, 4], "move": [3, 6, 11], "much": [4, 6, 11], "multipl": 1, "must": [0, 4, 5, 9], "my_report": 1, "name": [0, 1, 5, 7, 8, 9, 11], "name_df1": [8, 9, 10, 11], "name_df2": [8, 9, 10, 11], "name_match": [8, 9, 10, 11], "nan": [0, 1, 8, 9, 10, 11], "nativ": [3, 5, 6, 11], "natur": 3, "na\u00efv": 8, "need": [4, 5, 8], "new": [0, 1, 4, 5, 6, 8, 9, 11], "newlin": [0, 1], "nice": [0, 1], "non": [0, 1, 5], "none": [0, 1, 4, 10], "note": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11], "notic": 5, "now": [6, 11], "np": [0, 1], "npt": 8, "null": [0, 1, 8, 9, 10, 11], "number": [0, 1, 3, 8, 9, 10, 11], "numer": [0, 1, 3], "numpi": [4, 6, 8, 11], "obj1": 8, "obj2": 8, "object": [1, 6, 11], "obsolet": 3, "offici": 4, "olap": 9, "old": [6, 11], "on_index": [0, 8, 10, 11], "onc": 4, "one": [0, 1, 4, 9, 11], "onli": [0, 1, 4, 8, 9, 10, 11], "open": [0, 1, 6], "oper": [0, 1, 5, 8], "option": [0, 1, 4, 5, 11], "order": [0, 1, 4, 5], "orderedset": [0, 1, 9, 10, 11], "org": 4, "origin": [0, 1, 5, 6, 8, 9, 11], "original_df": [0, 1], "orphan": 4, "other": [0, 1, 4, 5, 6, 8, 11], "otherwis": 1, "our": 3, "out": [0, 1, 4, 5, 6, 10, 11], "output": [0, 1, 4, 8], "over": [0, 6], "overlap": [0, 1], "overrid": 0, "overview": 6, "overwrit": [0, 1, 10], "p": 11, "packag": [2, 4, 6], "page": [4, 6], "panda": [0, 2, 3, 4, 5, 6, 7, 9, 11], "parallel": [0, 5], "paramet": [0, 1], "partial": 10, "particip": 6, "partit": 5, "pass": [0, 1, 4, 5], "password": 4, "pd": [5, 8, 11], "peopl": 4, "per": 4, "perform": [1, 3, 5, 6, 11], "pertin": [0, 1], "pick": 8, "pilot": 5, "pip": [4, 5, 6, 7], "pl": 9, "plan": 6, "pleas": [3, 5, 6, 7, 9], "point": 10, "polar": [2, 3, 5, 6, 7], "polarscompar": [0, 2, 6, 9], "pollut": 4, "port": 9, "post": [0, 1], "pre": [0, 1, 6], "precis": 10, "prefer": [6, 11], "preform": 3, "prepend": [0, 1], "present": [0, 1], "prevent": [1, 4], "print": [0, 1, 5, 6, 8, 9, 10, 11], "prior": 10, "proc": [0, 1, 6, 8], "process": [3, 4, 5, 6, 10], "produc": 5, "project": [4, 6], "properli": 4, "properti": [0, 1], "proport": 1, "provid": [0, 1, 4, 5, 6, 8, 11], "pure": 3, "purpos": 4, "push": 4, "py": 4, "py3": 4, "pypi": 6, "pyproject": 4, "pysaprk": [6, 11], "pyspark": [0, 1, 5, 6, 11], "pytest": 4, "python": [4, 5, 6, 7], "pyyaml": 4, "qualiti": 4, "queri": 9, "question": 1, "rai": [5, 6], "rais": 0, "ram": 3, "rang": 3, "rate": 1, "raw": [0, 1, 10], "re": [8, 10, 11], "read": [0, 1], "read_csv": [5, 8, 9, 11], "readabl": [0, 1, 5, 8, 10, 11], "readi": 1, "real": 4, "reason": 4, "recogn": [8, 10, 11], "recommend": [7, 10], "recomput": 1, "record": [0, 1, 3], "redirect": 1, "refer": [0, 1], "regener": 4, "rel": [0, 1, 8, 9, 10, 11], "rel_tol": [0, 1, 5, 8, 9, 10, 11], "relat": 5, "releas": 6, "renam": [6, 11], "render": [0, 1, 2, 4, 6], "replac": [0, 1, 5, 6, 8, 9, 11], "repo": [4, 6], "report": [0, 1, 2, 5, 6], "report_fil": 1, "repositori": 4, "repres": 0, "represent": [0, 1], "requir": [0, 6], "resili": [8, 9], "result": [1, 3, 5, 9, 10], "return": [0, 1, 4, 8, 9, 10, 11], "right": 4, "robert": [5, 8, 9, 10, 11], "root": 4, "row": [0, 1, 3, 6], "rows_both_al": [0, 1], "rows_both_mismatch": [0, 1], "rows_only_bas": [0, 1], "rows_only_compar": [0, 1], "run": [3, 6, 8, 9, 10, 11], "runner": 4, "rust": 9, "sa": [0, 1, 6, 8], "safe": [10, 11], "salt": 3, "same": [0, 1, 5, 8, 10], "sampl": [0, 1, 5, 8, 9, 10, 11], "sample_count": [0, 1], "sample_mismatch": [0, 1, 2], "save": [0, 1], "save_as_t": 10, "scene": [8, 10, 11], "schema": [0, 4], "seal": [5, 8, 9, 10, 11], "search": 6, "second": [0, 1, 3, 8, 10, 11], "section": [4, 9], "see": [3, 6, 9], "seem": 3, "semant": [4, 5], "sens": 1, "sensit": 10, "separ": 8, "seri": [0, 1, 8], "seriestyp": 0, "serv": [1, 4], "session": [0, 10], "set": [0, 1, 4, 8], "setup": [4, 6], "setuptool": 7, "sever": [4, 10], "sf": 4, "sf_account": 4, "sf_databas": 4, "sf_pwd": 4, "sf_schema": 4, "sf_uid": 4, "sf_warehous": 4, "shape": 9, "share": [0, 1], "shine": 3, "should": [0, 1, 4, 6, 7, 8, 9, 11], "show": [0, 1, 10], "show_all_column": 1, "shown": 1, "sign": 6, "significantli": 1, "similar": [0, 1, 9], "simpl": [4, 5, 6], "sinc": 4, "singl": [3, 4], "size": 1, "skip": [0, 1], "slate": [6, 11], "slightli": 9, "slower": 3, "small": 3, "snowflak": [2, 6], "snowflakecompar": [0, 2, 6], "snowpark": [0, 6], "so": [6, 8, 9, 10, 11], "some": [0, 1, 3, 6, 8, 9, 10, 11], "some_field": 8, "someth": [0, 4, 6], "somewhat": 8, "soon": 4, "sort": 8, "sourc": [6, 7], "sp": [0, 10], "spark": [0, 2, 3, 5], "spark_df2": 5, "spark_sess": [0, 1], "sparkcompar": [1, 5, 6, 11], "sparkpandascompar": [0, 1, 2, 11], "sparksess": [0, 1, 5, 11], "sparksqlcompar": [0, 1, 2, 6], "specif": 5, "specifi": [1, 5, 8, 9, 10, 11], "speed": 1, "sphinx": 4, "sql": [0, 2, 3, 5, 6, 11], "squash": 4, "standard": 1, "start": [0, 3, 6, 11], "stat": [0, 6], "statement": 1, "stdout": 1, "step": [1, 8], "still": 4, "store": 4, "str": [0, 1, 9], "streamlin": 4, "strict_schema": 0, "string": [0, 1, 3, 8, 9, 10, 11], "stringio": [5, 8, 9, 11], "strip": [0, 1], "strongli": 10, "structur": 0, "style": 4, "sub": [0, 1], "subfold": 4, "submodul": [2, 6, 11], "subpackag": [2, 6], "subsequ": [6, 11], "subset": [0, 1, 2, 4], "suffix": [0, 1], "suit": 4, "summar": [5, 10, 11], "summari": [1, 8, 9, 10, 11], "support": [0, 4, 7, 8, 9, 10, 11], "sure": [4, 6], "sy": 1, "synthet": 3, "t": [0, 1, 8, 9, 10, 11], "tabl": [0, 3, 5, 8, 9, 11], "tag": 4, "take": [1, 3], "taken": 4, "tar": 4, "target": 0, "temp": 0, "temp_column_nam": [0, 2, 6], "temp_id": [8, 10, 11], "templat": [0, 1], "temporari": [0, 8, 10, 11], "test": [6, 7, 8, 10, 11], "textio": 1, "textiowrapp": 1, "than": [0, 5, 6], "thei": [4, 9, 10], "them": 8, "therefor": 10, "thi": [0, 1, 4, 5, 6, 8, 9, 10, 11], "thing": 9, "third": [8, 10, 11], "though": 5, "time": [3, 6], "tldr": 6, "toler": [0, 1, 8, 9, 10, 11], "toml": 4, "toni": [8, 10, 11], "top": 9, "total": [8, 9, 10, 11], "toy_table_1": 10, "toy_table_2": 10, "track": [0, 1], "transform": 1, "treat": [1, 10], "tri": [0, 1, 3, 9], "trigger": [0, 1], "true": [0, 1, 4, 8, 9, 10, 11], "try": [8, 9, 10, 11], "tune": 3, "tupl": 1, "tweak": [0, 6], "twine": 4, "two": [0, 1, 5, 6, 8, 9, 10, 11], "txt": 1, "type": [0, 1, 4, 8, 9, 10, 11], "ultim": 1, "under": [4, 6, 11], "understand": 3, "unequ": [8, 9, 10, 11], "unexpect": [9, 10], "unifi": [5, 6], "union": 0, "uniqu": [0, 1, 8, 10, 11], "unit": 6, "unittest": 4, "unlik": 9, "unq_column": [0, 2, 5, 6], "up": [1, 4, 8], "updat": 4, "upgrad": [4, 7], "upload": 4, "url": 4, "us": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11], "usag": 6, "user": [0, 1, 3, 4], "usernam": 4, "utf": 1, "util": 4, "v0": [6, 9, 11], "valid": [0, 4], "valu": [0, 1, 8, 9, 10, 11], "valueerror": 8, "vanilla": 0, "variabl": [0, 1, 4], "vast": 3, "ve": 3, "veri": [3, 8, 9], "versa": [0, 1], "version": [0, 1, 3, 4, 5, 9, 11], "via": [4, 5, 6], "vice": [0, 1], "virtual": 7, "virtualenv": 6, "w": 1, "wa": [0, 1, 3, 6, 11], "wai": [0, 1, 5, 6, 10], "want": [4, 5], "warehous": 4, "we": [3, 4, 5, 6, 10, 11], "welcom": [3, 6], "what": [0, 1, 6, 8], "wheel": 4, "when": [0, 1, 3, 4, 8], "where": [0, 1, 4], "whether": [0, 1, 8], "which": [0, 1, 3, 4, 5, 6, 8, 9, 10, 11], "while": 1, "whitespac": [0, 1], "whl": 4, "wide": 1, "wisdom": 4, "wise": [0, 1], "wish": [6, 11], "within": [0, 1, 6, 8, 10, 11], "without": [0, 1], "wonder": [8, 10, 11], "work": [1, 4, 6, 7], "workflow": 4, "world": 1, "would": [1, 6], "write": [1, 10], "x": [0, 1], "y": 1, "ye": [8, 9], "yield": 9, "you": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11], "your": [1, 4, 6, 8, 9, 10, 11], "zero": 0}, "titles": ["datacompy package", "datacompy.spark package", "datacompy", "Benchmarks", "Developer Instructions", "Fugue Detail", "DataComPy", "Installation", "Pandas Usage", "Polars Usage", "Snowpark/Snowflake Usage", "Spark Usage"], "titleterms": {"The": 3, "addit": 10, "api": 6, "archiv": 4, "backend": 6, "base": 0, "basic": [5, 7, 9], "benchmark": 3, "caveat": [8, 9], "commit": 4, "compar": [5, 8, 9], "conda": 7, "consider": 10, "content": [0, 1, 6], "contributor": 6, "conveni": [8, 9, 10, 11], "core": 0, "cross": 5, "data": 3, "datacompi": [0, 1, 2, 6], "datafram": 10, "db": 10, "depend": 7, "dependnci": 6, "deprec": 6, "detail": 5, "develop": 4, "distribut": 4, "document": 4, "duplic": [8, 9, 10, 11], "edgetest": 4, "extra": 6, "forg": 7, "from": 7, "fugu": [0, 5], "full": 10, "futur": 5, "gener": 4, "guid": 4, "hook": 4, "how": 5, "indic": 6, "instal": [6, 7], "instruct": 4, "legaci": [1, 6], "limit": [8, 9], "manag": 4, "method": [8, 9, 10, 11], "modul": [0, 1], "name": 10, "object": [8, 9], "overview": [8, 9], "packag": [0, 1], "panda": [1, 8], "polar": [0, 9], "pre": 4, "provid": 10, "pypi": [4, 7], "quick": 6, "refer": 6, "releas": [4, 5], "report": [8, 9, 10, 11], "requir": 4, "roadmap": 6, "row": [8, 9, 10, 11], "run": 4, "schema": 10, "setup": [3, 8, 9, 10], "snowflak": [0, 4, 10], "snowflakecompar": 10, "snowpark": 10, "spark": [1, 6, 11], "sparkpandascompar": 6, "sparksqlcompar": 11, "sql": 1, "submodul": [0, 1], "subpackag": 0, "support": 6, "tabl": [6, 10], "table_nam": 10, "test": 4, "tldr": 3, "unit": 4, "us": 3, "usag": [5, 8, 9, 10, 11], "valid": 10, "version": 6, "virtualenv": 7, "work": 5}}) \ No newline at end of file diff --git a/snowflake_usage.html b/snowflake_usage.html index ff562dc5..43fbded4 100644 --- a/snowflake_usage.html +++ b/snowflake_usage.html @@ -6,7 +6,7 @@ - Snowpark/Snowflake Usage - datacompy 0.14.2 documentation + Snowpark/Snowflake Usage - datacompy 0.14.3 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@ diff --git a/spark_usage.html b/spark_usage.html index 2a9417bd..187f4cd7 100644 --- a/spark_usage.html +++ b/spark_usage.html @@ -6,7 +6,7 @@ - Spark Usage - datacompy 0.14.2 documentation + Spark Usage - datacompy 0.14.3 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@