代码之家  ›  专栏  ›  技术社区  ›  Joylove

没有标题的数据帧放置列

  •  7
  • Joylove  · 技术社区  · 6 年前

    在标题行为NaN的数据帧中,哪一个地方最适合删除列?最好在原地。

    列中可能有数据,也可能没有数据。

    df = pd.DataFrame({'col1': [1,2,np.NaN], 'col2': [4,5,6], np.NaN: [7,np.NaN,9]})
    df.dropna(axis='columns', inplace=True)  
    

    当它查看列中的数据时不执行此操作。

    想要的产出

    df = pd.DataFrame({'col1': [1,2,np.NaN], 'col2': [4,5,6]})
    

    提前感谢您的回复。

    2 回复  |  直到 6 年前
        1
  •  5
  •   jpp    6 年前

    你可以用 pd.Index.dropna :

    df = df[df.columns.dropna()]
    
    print(df)
    
       col1  col2
    0   1.0     4
    1   2.0     5
    2   NaN     6
    
        2
  •  7
  •   ipramusinto    6 年前

    试试这个

    df.drop(np.nan, axis=1, inplace=True)
    

    None ,那么 日本邮政 他的答案一下子就能完全奏效。 如果你不止一个 np.nan 头,我不知道怎么做 df.drop