def test_delete_not_preserving_rangeindex(self): idx = RangeIndex(0, 6, 1) loc = [0, 3, 5] result = idx.delete(loc) expected = Int64Index([1, 2, 4]) tm.assert_index_equal(result, expected, exact=True) result = idx.delete(loc[::-1]) tm.assert_index_equal(result, expected, exact=True)
def test_delete_preserves_rangeindex_list_middle(self): idx = RangeIndex(0, 6, 1) loc = [1, 2, 3, 4] result = idx.delete(loc) expected = RangeIndex(0, 6, 5) tm.assert_index_equal(result, expected, exact=True) result = idx.delete(loc[::-1]) tm.assert_index_equal(result, expected, exact=True)
def test_delete_all_preserves_rangeindex(self): idx = RangeIndex(0, 6, 1) loc = [0, 1, 2, 3, 4, 5] result = idx.delete(loc) expected = idx[:0] tm.assert_index_equal(result, expected, exact=True) result = idx.delete(loc[::-1]) tm.assert_index_equal(result, expected, exact=True)
def test_delete(self): idx = RangeIndex(5, name="Foo") expected = idx[1:] result = idx.delete(0) tm.assert_index_equal(result, expected, exact=True) assert result.name == expected.name expected = idx[:-1] result = idx.delete(-1) tm.assert_index_equal(result, expected, exact=True) assert result.name == expected.name msg = "index 5 is out of bounds for axis 0 with size 5" with pytest.raises((IndexError, ValueError), match=msg): # either depending on numpy version result = idx.delete(len(idx))