删除PandasDataFrame中包含相同值的行[重复]

bvjveswy  于 2023-02-07  发布在  其他
关注(0)|答案(1)|浏览(121)
    • 此问题在此处已有答案**:

better way to drop nan rows in pandas(7个答案)
2天前关闭。
我目前正在制作一个数据框,如下所示:
| 艺术家|第1周|第2周|第3周|第4周|
| - ------|- ------|- ------|- ------|- ------|
| 德雷克|第二章|第二章|三个|1个|
| 缪斯|不适用|不适用|不适用|不适用|
| 布鲁诺·马尔斯|三个|三个|四个|第二章|
| 幻想龙|不适用|不适用|不适用|不适用|
| 贾斯汀·汀布莱克|第二章|第二章|不适用|1个|
我想做的是删除只包含"NA"值的行。结果应该是这样的:
| 艺术家|第1周|第2周|第3周|第4周|
| - ------|- ------|- ------|- ------|- ------|
| 德雷克|第二章|第二章|三个|1个|
| 布鲁诺·马尔斯|三个|三个|四个|第二章|
| 贾斯汀·汀布莱克|第二章|第二章|不适用|1个|
我试过使用pandas drop()函数,但是删除了至少有一个"NA"值的每一行,在这种情况下,Justin Timberlake的行将被删除,但这不是我需要的。

dfuffjeb

dfuffjeb1#

使用df.dropna()并设置how='all'表示如果所有值都是NA,则删除该行或列。然后设置subset列。

df = df.dropna(how='all', subset=['week1', 'week2', 'week3', 'week4'])
print(df)

或 * 仅保留至少有2个非NA值的行。*
x一个一个一个一个x一个一个二个x

相关问题