原始df有100000行,我这里有一个要从df中删除的索引列表。
此列表具有27346行,因此在执行索引删除功能后df应该具有(100000-27346)行,但是它有72852行,并且超出了预期。
len(df) = 100000
len(index_list) = 27346
df_new = df.drop(index_list)
len(df_new) = 72852
len(df) - len(index_list) = 72654
任何建议将不胜感激。
答案 0 :(得分:0)
您的测试有缺陷。考虑一下index_list = [1] * 237346
和索引1
属于您的输入数据帧的情况。然后,您将拥有:
len(df) - len(index_list) # 72654
len(df) # 100000
len(df_new) # 99999
请确保您的index_list
通过(例如)index_list = list(set(index_list))
是唯一的,当然,为了进行测试排队,您应确保数据框中的索引实际上以 unique < / em>标识符。