DataFrame的iterrows迭代中无法直接修改源数据
在iterrows中,尝试使用index和row对DataFrame类型的变量直接进行更改,但是输出时发现值没有改变
这是因为使用row[‘列名’]修改的值是临时的,不是对原数据直接修改
解决方案:在修改语句的末尾添加:
df.iloc[index] = row
通过该种方式将row修改后的临时值传回,确保原数据的改动
尽量不要在循环中使用DataFrame的append函数和drop函数
在处理数据的时候如果直接在循环里面用append和drop就会越来越慢
可以先创建一个list把返回值或者需要处理的index先存起来,然后再统一使用一次df.append或者df.drop
delete_index = []
delete.append(