python 如何根据两个不同 CSV 文件中的空值分隔数据

How to separate data based on null values in two different CSV files in python

我是 python 开发的新手,我正在尝试根据空值将 csv 文件分成两个不同的文本文件

我的 csv 文件有类似

的数据

我的 csv 文件包含四个字段 facility、Truck、Driver 和 licenses 卡车和 driver 有一些空值 我想为卡车值 us null 的行值创建两个单独的文件,另一个文件将包含 driver 值为 null 的信息。

我尝试了以下代码,但它没有消除空值,它在文本文件中显示 0 或 space

    License = pd.read_csv("E:\ActiveCityLicenses.csv")

    a=License.isnull().sum()
    print(a)
    print(License.shape)
    m=License[License['TRUCK_ID'].isnull()]
    print(m)
    n=License.dropna(axis= 0, subset= ['TRUCK_ID'], inplace=True)
    print(n)

    License.to_csv(r'E:\DriverLicense.txt', header=None, index=None, mode='w', columns=None)
    #I had to create two data frames as after doing first dorpna entire frame gets empty


    License1 = pd.read_csv("E:\ActiveCityLicenses.csv")
    p=License1.dropna(axis= 0, subset= ['EMPLOYEE_ID'], inplace=True)
    print(p)

    License1.to_csv(r'E:\TruckLicense.txt', header=None, index=None, sep=',', mode='w')

任何人都可以提出更好的方法吗,或者我在这里缺少什么? 文本文件中的输出是

     A119,BF01,,TOR|MARK|BRAM|MISS|RHILL|VAU
     A119,BF03,,TOR|MARK|BRAM|MISS|RHILL|VAU
     A119,BF04,,TOR|MARK|BRAM|MISS|RHILL|VAU
     A119,BF05,,TOR|MARK|BRAM|MISS|RHILL|VAU

space不应该在那里。

如果您想确保空列不存在,您可以随时删除该列,例如: License.drop(labels="EMPLOYEE_ID", axis=1, inplace=True) 我不完全确定你想从哪里删除哪一列,所以我无法给出更完整的解决方案。

df= df[pd.notnull(df['TRUCK_ID'])]