代码之家  ›  专栏  ›  技术社区  ›  송준석

如何使用python在csv文件中删除none行?

  •  2
  • 송준석  · 技术社区  · 7 年前

    例如,我有以下csv数据集:

    [1,2,3,4]
    [3,5,2,5]
    [,3,2,4]
    

    正如您在上面的数据集中看到的,有一个没有值的列表。

    在上述情况下,我想删除csv中没有值的列表。

    当我尝试的时候,我甚至都无法删除它,因为我无法读取空值。

    请建议一种擦除它的方法。

    这是我试过的。

    -在我将xlsx数据放入变量命名数据之前。

    while k < cols:
        if data[i] != None:
            with open('data.csv', 'a') as f:
            writer = csv.writer(f)
            writer.writerows(data)
            f.close()
    
    1 回复  |  直到 7 年前
        1
  •  6
  •   sudonym    7 年前

    要删除单元格为“空”的行,请执行以下操作:

    1。将.csv导入熊猫数据帧

    import pandas as pd
    
    df_csv = pd.read_csv('yourfile.csv')
    

    2。删除南行

    df_csv.dropna(axis = 0, how = 'any', inplace = True) 
    # axis = 1 will drop the column instead of the row
    # how = 'all' will only drop if all cells are NaN
    

    三。保存到CSV

    df_csv.to_csv('yourfile_parsed.csv', index = False)
    

    评论

    1. 最好参考 None NaN 而不是说 空的
    2. 还有, 清楚的 '最好打电话' '-否则人们可能认为您希望在保留行的同时删除所有值