如何基于多个dataframe进行dropna?

问题描述 投票:0回答:1

我有 4 个数据帧,df1、df2、df3、df4,这样 df 中的行 x 与其他数据帧中的行 x 相对应。

我想根据特定列是否具有 NA 值来删除行。

但是,由于限制,如果我将行 x 放入其中一个 dfs 中,我也必须将其放入其他 dfs 中,以保持对应关系。

我通常可以通过识别每个 df 中的行、取并然后删除它们来做到这一点。

但是有没有一种“Pythonic”的方法可以做到这一点?有针对此类任务的优化功能吗?

python-3.x pandas dataframe na
1个回答
0
投票

用途:

dfs = [df1,df2,df3,df4]

m = np.logical_or.reduce([x['col'].isna() for x in dfs])

dfs = [x[m] for x in dfs]

如果需要单独所有数据帧:

df1,df2,df3,df4 = dfs
© www.soinside.com 2019 - 2024. All rights reserved.