Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 返回数据帧行,其中列中的值不是日期类型_Python_Pandas - Fatal编程技术网

Python 返回数据帧行,其中列中的值不是日期类型

Python 返回数据帧行,其中列中的值不是日期类型,python,pandas,Python,Pandas,我有一个数据帧df,看起来像: Name Date of birth Bob Steve 22/07/1963 Jo pencil Karen 03/02/1953 Frank 29/09/1994 是否有方法返回出生日期不是日期的行 在上述示例中,我将返回: Name Date of birth Bob Jo pencil 其中,出生日期不是日期 我可以使用以下方法确定出生日期的空

我有一个数据帧
df
,看起来像:

 Name   Date of birth
  Bob   
Steve      22/07/1963
   Jo          pencil
Karen      03/02/1953
Frank      29/09/1994
是否有方法返回
出生日期
不是日期的行

在上述示例中,我将返回:

 Name   Date of birth
  Bob   
   Jo          pencil
其中,
出生日期
不是日期

我可以使用以下方法确定出生日期的空白值:

missingDoBError = df.loc[df['Date of birth'].isnull()]
我尝试使用以下方法查找出生日期值,其中该值不是设置为NaT的日期格式:

if pd.to_datetime(df['Date of birth'], format='%d-%b-%Y', errors='coerce').notnull().all():

但我无法实现此功能。

我认为您需要将格式更改为
%d/%m/%Y
,并测试缺少的值:

m2 = pd.to_datetime(df['Date of birth'], format='%d/%m/%Y', errors='coerce').isnull()
#or skip parameter format if performance is not important
#m2 = pd.to_datetime(df['Date of birth'], errors='coerce').isnull()

df = df[m2]
print (df)
  Name Date of birth
0  Bob           NaN
2   Jo        pencil
如果要省略
NaN
s行,请使用按位
&
)链接另一个布尔掩码以测试不丢失的值:


我想我们可以跳过格式。让熊猫为我们决定什么是约会,什么不是(我的意思是)。熊猫并不总是和表演有关。我认为更多的是关于快速数据探索。如果我们传递一个格式,并且在%Y-%m-%d中有一个日期,我们将错过它。但也许OP对格式要求很严格。@AntonvBR-我同意,如果想要更好的解决方案,最好省略它,如果只有相同的格式,而且重要的是性能,最好使用它。;)正是我的意思!很好的解决方案。
m1 = df['Date of birth'].notnull()
m2 = pd.to_datetime(df['Date of birth'], format='%d/%m/%Y', errors='coerce').isnull()

df = df[m1 & m2]
print (df)
  Name Date of birth
2   Jo        pencil