如果df [0,i]是nan,如何删除pandas数据帧中的列?

时间:2015-10-11 03:09:50

标签: python pandas

我已经阅读了大量关于熊猫数据框架的帖子,并且已经浏览了文档,但不得不求助于自己,因为我找不到答案。如果该列的第一个值具有NaN值,我想删除整个列。我对熊猫很新,但我应该能够简单地遍历第一行并删除一列,对吗?类似的东西:

for i in range(0,df.shape[1]):
    x = numpy.isnan(df[i])
    if x[0]==True: 
         del df[i]

但是当列标签不是整数'i'时,这对我不起作用。有没有人知道解决方案或更好的方法呢?
谢谢

1 个答案:

答案 0 :(得分:0)

您的方法即将开始工作,但使用range中的数字进行删除而不是列名。尝试将循环更改为

for col in df:
    if np.isnan(df[col].iloc[0]) == True:
        del df[col]