pandas -删除DataFrame的最后一列 [英] Pandas - drop last column of DataFrame
问题描述
我有一个DataFrame,我想删除它的最后一列.到目前为止,我只是用
I have a DataFrame and I would like to drop the last column of it. Until now I had just been dropping what I believed to be the final column with
if len(fish_frame.columns) == 4:
del fish_frame[3]
.
if len(fish_frame.columns) == 4:
del fish_frame[3]
.
但是,在此命令之前,我删除了NaN
s的所有列.这样就删除了列[3]
,因为它已用NaN
填充,所以它失败了.
Right before this command, however, I drop all columns of NaN
s. So that removes column [3]
because it is filled with NaN
s, so it fails.
我想说的只是删除整个DataFrame的最后一列.我觉得那会很好.
I would like to say just drop the final column of the entire DataFrame. I feel like that would work perfectly.
我尝试了fish_frame([:-1], axis=1)
,但这是无效的语法.
I tried fish_frame([:-1], axis=1)
but that's invalid syntax.
任何帮助将不胜感激,谢谢.
Any help would be appreciated thanks.
DataFrame:
The DataFrame:
fish_frame after dropna:
0 1 2 4
0 #0721 NaN NaN NaN
1 GBE COD 746 $2.00 $1,492.00
2 GBW COD 13,894 $0.50 $6,947.00
3 GOM COD 60 $2.00 $120.00
4 GB WINTER FLOUNDER 94,158 $0.25 $23,539.50
5 GOM WINTER FLOUNDER 3,030 $0.50 $1,515.00
6 GBE HADDOCK 18,479 $0.02 $369.58
7 GOM HADDOCK 0 $0.02 $0.00
8 GBW HADDOCK 110,470 $0.02 $2,209.40
9 HAKE 259 $1.30 $336.70
10 PLAICE 3,738 $0.40 $1,495.20
11 POLLOCK 3,265 $0.02 $65.30
12 WITCH FLOUNDER 1,134 $1.30 $1,474.20
13 SNE YT 1,458 $0.65 $947.70
14 GB YT 4,499 $0.70 $3,149.30
15 REDFISH 841 $0.02 $16.82
16 54 DAS @ $8.00/DAY = 432.00 NaN NaN None
推荐答案
使用iloc
并列出索引
fish_frame = fish_frame.iloc[:, :-1]
0 1 2
0 #0721 NaN NaN
1 GBE COD 746 $2.00
2 GBW COD 13,894 $0.50
3 GOM COD 60 $2.00
4 GB WINTER FLOUNDER 94,158 $0.25
5 GOM WINTER FLOUNDER 3,030 $0.50
6 GBE HADDOCK 18,479 $0.02
7 GOM HADDOCK 0 $0.02
8 GBW HADDOCK 110,470 $0.02
9 HAKE 259 $1.30
10 PLAICE 3,738 $0.40
11 POLLOCK 3,265 $0.02
12 WITCH FLOUNDER 1,134 $1.30
13 SNE YT 1,458 $0.65
14 GB YT 4,499 $0.70
15 REDFISH 841 $0.02
16 54 DAS @ $8.00/DAY = 432.00 NaN NaN
这篇关于 pandas -删除DataFrame的最后一列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!