From 25b771ddf1c46431f30b7bb9a2ffc5c8e9877ebc Mon Sep 17 00:00:00 2001 From: Mark Zhao <50850474+markzhao98@users.noreply.github.com> Date: Wed, 25 Aug 2021 18:07:30 +0800 Subject: [PATCH] check lexsort in the 'lazy_sort_index' function (#566) * check lexsort * check lexsort * lexsort comment * lexsort comment --- .DS_Store | Bin 0 -> 8196 bytes qlib/utils/__init__.py | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..b7fd12f31fe4fade2411262fae748ad7720a1028 GIT binary patch literal 8196 zcmeHML2nyH6n>Ms#3pUBNs}~HL0S=2s?-prYEZdUb)1CO6dIFF+eB$`ckPL@VzXm* z*KyMj+Ns^Szz@-kY7z`__JI zB4VXh{VLH65#`Y(S|b=<(&TyB2ij0NGYVwzC%Q$erC`gg*bTYOshV;I&38sQ9bEk1)#PyO_BLYXffq_NbnT z@na@Nj_M?+M)7eTdpE<&6Q?KSB4U#Q*jfHJ8U8SRLS)rQxyJ}4?i!gEhkVneduX9iyKJdf3XqQAQtj8*jqfe-Xs@C-3;rk17 z_O)wAbN1o&4;JU_#p@p)9ToEDFI~M+e!O?^^zf^rub*SfXe@nt(wIK(jo-rRZO^am zr`uycb+`A2W%V}r_Q;vDqhr?i#JTaw@u{h)>GM-F7cN|^TIW2s_C+I-m%1zh5tV`# z-}GxDbo{4$GvQAXX;iI=3~!y+KYuZ`anJ;3^2LOTbt~dL+-^jEeQjqa=E-K&8jEX@ z2!e`;{lpjHR^QpJhcOf{Cw#9Q?g*^74~5s7k`~|RQ4AdL-`sMe$PF93bnqx}Jszxu zC6OdzPcmgRY@`x#8A+|=G~JpXHfC@BrDdEgR=UPzZCEs`4gAQq*hVNqUMS2K@1&D? zx`KP`W89&;)TU?j9sNK*(=YTp{Yihb9GhnEu`6tm-C#G_ZB}M?ScQGY*0uLg_oIBL zyM#uz4eWiC`%V-FB5Ytz@(Z+%oLEARehNG(L;LUfVZ6z!;eDQu%u5FHPUdMpdqid% z^6nniDdQQi^|CdX%+`LdJl5cd-ohI5=m*F1kjZ@Q=br`_&w#<}kr~TI`!W`XML3&g z6fg=5C~!*8%*gtG_2l>e1Ab=0C}0$La};2?6=$V{{d9j)WVa@3Z5#bDx@?ly(WqQ7 lsB#>r%5h-t4@1~CsM4pHVn-up(9DYfC4(7^0 pd.DataFrame: sorted dataframe """ idx = df.index if axis == 0 else df.columns - if idx.is_monotonic_increasing: + # NOTE: MultiIndex.is_lexsorted() is a deprecated method in Pandas 1.3.0 and is suggested to be replaced by MultiIndex.is_monotonic_increasing (see discussion here: https://github.com/pandas-dev/pandas/issues/32259). However, in case older versions of Pandas is implemented, MultiIndex.is_lexsorted() is necessary to prevent certain fatal errors. + if idx.is_monotonic_increasing and not (isinstance(idx, pd.MultiIndex) and not idx.is_lexsorted()): return df else: return df.sort_index(axis=axis)