0

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

我的 csv 文件有类似的数据

在此处输入图像描述

在此处输入图像描述

我的 csv 文件包含四个字段设施、卡车、司机和执照卡车和司机有一些空值我想为行值创建两个单独的文件,其中卡车值为空,另一个文件将包含司机值为空的信息。

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

    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

空间不应该在那里。

4

2 回答 2

0

如果您想确保空列不存在,您始终可以通过以下操作删除该列: License.drop(labels="EMPLOYEE_ID", axis=1, inplace=True) 我不完全确定您想要删除哪一列,所以我无法提供更完整的解决方案。

于 2019-11-14T11:07:33.193 回答
0
df= df[pd.notnull(df['TRUCK_ID'])]
于 2019-11-21T15:19:15.947 回答