[英]How to write a loop that drops NaN values across multiple pandas dataframes
[英]Function drops invalid values in dataframes but then it returns original dataframes with invalid values
我创建了这个简单的 function:
def cleanup_data(*argv):
for df in argv:
df = df.dropna()
return argv
但是,如果我调用 cleanup_data(df1, df2),稍后我会这样做:
df1.isnull().values.any()
或者
df2.isnull().values.any()
我明白了。
我的代码有什么问题?
您不会返回更新的数据帧,而是返回未更改的argv
。 以下是如何使用列表推导式返回更新后的数据框列表:
def cleanup_data(*argv):
return [df.dropna() for df in argv]
或者,您可以使df.dropna
在数据帧上就地运行:
def cleanup_data(*argv):
for df in argv:
df.dropna(inplace=True)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.