如何在python中基于两个不同CSV文件中的空值分离数据
我是python开发的新手,我正在尝试根据空值将csv文件分为两个不同的文本文件 我的csv文件包含如下数据 及 我的csv文件包含四个字段:设施、卡车、驾驶员和执照 卡车和驾驶员有一些空值 我想为行值创建两个单独的文件,其中truck value us为null,另一个文件将包含driver value为null的信息 我尝试了以下代码,但它并没有消除文本文件中显示0或空格的空值如何在python中基于两个不同CSV文件中的空值分离数据,python,pandas,dataframe,data-processing,export-to-text,Python,Pandas,Dataframe,Data Processing,Export To Text,我是python开发的新手,我正在尝试根据空值将csv文件分为两个不同的文本文件 我的csv文件包含如下数据 及 我的csv文件包含四个字段:设施、卡车、驾驶员和执照 卡车和驾驶员有一些空值 我想为行值创建两个单独的文件,其中truck value us为null,另一个文件将包含driver value为null的信息 我尝试了以下代码,但它并没有消除文本文件中显示0或空格的空值 License = pd.read_csv("E:\ActiveCityLicenses.csv")
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
不应存在空格。如果要确保空列不存在,可以始终通过执行以下操作来删除该列,例如:
License.drop(labels=“EMPLOYEE\u ID”,axis=1,inplace=True)
我不完全确定您希望删除哪一列,因此我无法给出更完整的解决方案
df= df[pd.notnull(df['TRUCK_ID'])]