如果子集的值是dtype对象中的[],则删除行

时间:2020-05-01 10:02:57

标签: pandas

我的DataFrame看起来像这样:

DataFrame

我发现了这个,但是对我来说不起作用。 Drop rows containing empty cells from a pandas DataFrame

我尝试过

df_model['Zustand'].replace("[]", np.nan, inplace=True)

df_model.dropna(subset=['Zustand'], inplace=True)

“ []”是dtype对象。我不确定如何处理。

问候 丹妮尔

2 个答案:

答案 0 :(得分:0)

如果该列包含“列表”对象:

df_model['Zustand'].apply(lambda x: np.nan if len(x)==0 else x)
df_model.dropna(subset=['Zustand'], inplace=True)

答案 1 :(得分:0)

既然您没有给我一些信息,让我使用自己的数据

df_model=pd.DataFrame({'BildName':['D850', 'D876', 'D839','ETC'], 'Zustand':['Beto','kelo','[]','[]']})

尝试

df_model['Zustand']=df_model['Zustand'].str.replace("\[\]", "")
df_model['Zustand'].replace('', np.nan, inplace=True)
df_model.dropna(subset=['Zustand'], inplace=True)

或 涂上口罩

m=df_model.Zustand.str.contains('\[\]')

根据需要更改

df_model.loc[m,'Zustand']=np.nan
df_model.dropna(inplace=True)