@@ -183,10 +183,17 @@ def test_at_multiindex(self):
183
183
pdf = self .pdf .set_index ("b" , append = True )
184
184
kdf = self .kdf .set_index ("b" , append = True )
185
185
186
- self .assert_eq (kdf .at [(3 , 6 ), "a" ], pdf .at [(3 , 6 ), "a" ])
187
- self .assert_eq (kdf .at [(3 ,), "a" ], pdf .at [(3 ,), "a" ])
188
- self .assert_eq (list (kdf .at [(9 , 0 ), "a" ]), list (pdf .at [(9 , 0 ), "a" ]))
189
- self .assert_eq (list (kdf .at [(9 ,), "a" ]), list (pdf .at [(9 ,), "a" ]))
186
+ # TODO: seems like a pandas' bug in pandas>=1.1.0
187
+ if LooseVersion (pd .__version__ ) < LooseVersion ("1.1.0" ):
188
+ self .assert_eq (kdf .at [(3 , 6 ), "a" ], pdf .at [(3 , 6 ), "a" ])
189
+ self .assert_eq (kdf .at [(3 ,), "a" ], pdf .at [(3 ,), "a" ])
190
+ self .assert_eq (list (kdf .at [(9 , 0 ), "a" ]), list (pdf .at [(9 , 0 ), "a" ]))
191
+ self .assert_eq (list (kdf .at [(9 ,), "a" ]), list (pdf .at [(9 ,), "a" ]))
192
+ else :
193
+ self .assert_eq (kdf .at [(3 , 6 ), "a" ], 3 )
194
+ self .assert_eq (kdf .at [(3 ,), "a" ], np .array ([3 ]))
195
+ self .assert_eq (list (kdf .at [(9 , 0 ), "a" ]), [7 , 8 , 9 ])
196
+ self .assert_eq (list (kdf .at [(9 ,), "a" ]), [7 , 8 , 9 ])
190
197
191
198
with self .assertRaises (ValueError ):
192
199
kdf .at [3 , "a" ]
@@ -1127,38 +1134,38 @@ def test_index_operator_datetime(self):
1127
1134
kdf = ks .from_pandas (pdf )
1128
1135
1129
1136
# Positional iloc search
1130
- self .assert_eq (kdf [:4 ], pdf [:4 ])
1131
- self .assert_eq (kdf [:3 ], pdf [:3 ])
1132
- self .assert_eq (kdf [3 :], pdf [3 :])
1133
- self .assert_eq (kdf [2 :], pdf [2 :])
1134
- self .assert_eq (kdf [2 :3 ], pdf [2 :3 ])
1135
- self .assert_eq (kdf [2 :- 1 ], pdf [2 :- 1 ])
1136
- self .assert_eq (kdf [10 :3 ], pdf [10 :3 ])
1137
+ self .assert_eq (kdf [:4 ], pdf [:4 ], almost = True )
1138
+ self .assert_eq (kdf [:3 ], pdf [:3 ], almost = True )
1139
+ self .assert_eq (kdf [3 :], pdf [3 :], almost = True )
1140
+ self .assert_eq (kdf [2 :], pdf [2 :], almost = True )
1141
+ self .assert_eq (kdf [2 :3 ], pdf [2 :3 ], almost = True )
1142
+ self .assert_eq (kdf [2 :- 1 ], pdf [2 :- 1 ], almost = True )
1143
+ self .assert_eq (kdf [10 :3 ], pdf [10 :3 ], almost = True )
1137
1144
1138
1145
# Index loc search
1139
1146
self .assert_eq (kdf .A [4 ], pdf .A [4 ])
1140
1147
self .assert_eq (kdf .A [3 ], pdf .A [3 ])
1141
1148
1142
1149
# Positional iloc search
1143
- self .assert_eq (kdf .A [:4 ], pdf .A [:4 ])
1144
- self .assert_eq (kdf .A [:3 ], pdf .A [:3 ])
1145
- self .assert_eq (kdf .A [3 :], pdf .A [3 :])
1146
- self .assert_eq (kdf .A [2 :], pdf .A [2 :])
1147
- self .assert_eq (kdf .A [2 :3 ], pdf .A [2 :3 ])
1148
- self .assert_eq (kdf .A [2 :- 1 ], pdf .A [2 :- 1 ])
1149
- self .assert_eq (kdf .A [10 :3 ], pdf .A [10 :3 ])
1150
+ self .assert_eq (kdf .A [:4 ], pdf .A [:4 ], almost = True )
1151
+ self .assert_eq (kdf .A [:3 ], pdf .A [:3 ], almost = True )
1152
+ self .assert_eq (kdf .A [3 :], pdf .A [3 :], almost = True )
1153
+ self .assert_eq (kdf .A [2 :], pdf .A [2 :], almost = True )
1154
+ self .assert_eq (kdf .A [2 :3 ], pdf .A [2 :3 ], almost = True )
1155
+ self .assert_eq (kdf .A [2 :- 1 ], pdf .A [2 :- 1 ], almost = True )
1156
+ self .assert_eq (kdf .A [10 :3 ], pdf .A [10 :3 ], almost = True )
1150
1157
1151
1158
dt1 = datetime .datetime .strptime ("2013-01-02" , "%Y-%m-%d" )
1152
1159
dt2 = datetime .datetime .strptime ("2013-01-04" , "%Y-%m-%d" )
1153
1160
1154
1161
# Index loc search
1155
- self .assert_eq (kdf [:dt2 ], pdf [:dt2 ])
1156
- self .assert_eq (kdf [dt1 :], pdf [dt1 :])
1157
- self .assert_eq (kdf [dt1 :dt2 ], pdf [dt1 :dt2 ])
1158
- self .assert_eq (kdf .A [dt2 ], pdf .A [dt2 ])
1159
- self .assert_eq (kdf .A [:dt2 ], pdf .A [:dt2 ])
1160
- self .assert_eq (kdf .A [dt1 :], pdf .A [dt1 :])
1161
- self .assert_eq (kdf .A [dt1 :dt2 ], pdf .A [dt1 :dt2 ])
1162
+ self .assert_eq (kdf [:dt2 ], pdf [:dt2 ], almost = True )
1163
+ self .assert_eq (kdf [dt1 :], pdf [dt1 :], almost = True )
1164
+ self .assert_eq (kdf [dt1 :dt2 ], pdf [dt1 :dt2 ], almost = True )
1165
+ self .assert_eq (kdf .A [dt2 ], pdf .A [dt2 ], almost = True )
1166
+ self .assert_eq (kdf .A [:dt2 ], pdf .A [:dt2 ], almost = True )
1167
+ self .assert_eq (kdf .A [dt1 :], pdf .A [dt1 :], almost = True )
1168
+ self .assert_eq (kdf .A [dt1 :dt2 ], pdf .A [dt1 :dt2 ], almost = True )
1162
1169
1163
1170
def test_index_operator_int (self ):
1164
1171
pdf = pd .DataFrame (np .random .randn (6 , 4 ), index = [1 , 3 , 5 , 7 , 9 , 11 ], columns = list ("ABCD" ))
0 commit comments