gpt4 book ai didi

python - Pandas :删除所有 NaN 的列

转载 作者:太空狗 更新时间:2023-10-30 00:22:42 24 4
gpt4 key购买 nike

我意识到从数据帧中删除 NaNdf.dropna 一样简单,但由于某些原因,这对我来说不起作用,我不确定为什么。

这是我的原始数据框:

fish_frame1:                       0   1   2         3   4       5   6          7
0 #0915-8 NaN NaN NaN NaN NaN NaN NaN
1 NaN NaN NaN LIVE WGT NaN AMOUNT NaN TOTAL
2 GBW COD NaN NaN 2,280 NaN $0.60 NaN $1,368.00
3 POLLOCK NaN NaN 1,611 NaN $0.01 NaN $16.11
4 WHAKE NaN NaN 441 NaN $0.70 NaN $308.70
5 GBE HADDOCK NaN NaN 2,788 NaN $0.01 NaN $27.88
6 GBW HADDOCK NaN NaN 16,667 NaN $0.01 NaN $166.67
7 REDFISH NaN NaN 932 NaN $0.01 NaN $9.32
8 GB WINTER FLOUNDER NaN NaN 145 NaN $0.25 NaN $36.25
9 GOM WINTER FLOUNDER NaN NaN 25,070 NaN $0.35 NaN $8,774.50
10 GB YELLOWTAIL NaN NaN 26 NaN $1.75 NaN $45.50

接下来的代码试图删除所有 NaN 以及包含超过 3 个 NaN 的任何列(我应该可以使用一个或两个)想想):

fish_frame.dropna()
fish_frame.dropna(thresh=len(fish_frame) - 3, axis=1)

这会产生:

fish_frame1 after dropna:                       0   1   2         3   4       5   6          7
0 #0915-8 NaN NaN NaN NaN NaN NaN NaN
1 NaN NaN NaN LIVE WGT NaN AMOUNT NaN TOTAL
2 GBW COD NaN NaN 2,280 NaN $0.60 NaN $1,368.00
3 POLLOCK NaN NaN 1,611 NaN $0.01 NaN $16.11
4 WHAKE NaN NaN 441 NaN $0.70 NaN $308.70
5 GBE HADDOCK NaN NaN 2,788 NaN $0.01 NaN $27.88
6 GBW HADDOCK NaN NaN 16,667 NaN $0.01 NaN $166.67
7 REDFISH NaN NaN 932 NaN $0.01 NaN $9.32
8 GB WINTER FLOUNDER NaN NaN 145 NaN $0.25 NaN $36.25
9 GOM WINTER FLOUNDER NaN NaN 25,070 NaN $0.35 NaN $8,774.50
10 GB YELLOWTAIL NaN NaN 26 NaN $1.75 NaN $45.50

我是 Pandas 的新手,所以我不确定这是否不起作用,因为我做错了什么,或者我误解了什么或滥用了一个功能。感谢您的帮助。

最佳答案

来自 dropna 文档字符串:

删除所有元素均为 NaN 的列:
df.dropna(axis=1, how='all')


A B D
0 NaN 2.0 0
1 3.0 4.0 1
2 NaN NaN 5

关于python - Pandas :删除所有 NaN 的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45147100/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com