string match returns NaN on non strings (original) (raw)
Or just not respecting na flag.
In [44]: s = pd.Series(['a', 0, np.nan])
In [45]: s.str.contains('a', na=False)
Out[45]:
0 True
1 False
2 False
dtype: bool
In [46]: s.str.match('a', na=False)
Out[46]:
0 True
1 NaN
2 NaN
dtype: object