@@ -84,18 +84,32 @@ def test_to_datetime_format_YYYYMMDD(self, cache):
84
84
assert_series_equal (result , expected )
85
85
86
86
# GH 25512
87
- # strings with invalid date values, errors=coerce
87
+ # NaN before strings with invalid date values, errors=coerce
88
+ s = Series (['19801222' , np .nan , '20010012' , '10019999' ])
89
+ result = pd .to_datetime (s , format = '%Y%m%d' , errors = 'coerce' ,
90
+ cache = cache )
91
+ expected = Series ([Timestamp ('19801222' ), np .nan , np .nan , np .nan ])
92
+ tm .assert_series_equal (result , expected )
93
+
94
+ # NaN after strings with invalid date values, errors=coerce
88
95
s = Series (['19801222' , '20010012' , '10019999' , np .nan ])
89
96
result = pd .to_datetime (s , format = '%Y%m%d' , errors = 'coerce' ,
90
97
cache = cache )
91
98
expected = Series ([Timestamp ('19801222' ), np .nan , np .nan , np .nan ])
92
99
tm .assert_series_equal (result , expected )
93
100
94
- # integers with invalid date values, errors=coerce
95
- s = Series ([20010012 , 20190813 , 20019999 , np .nan ])
101
+ # NaN before integers with invalid date values, errors=coerce
102
+ s = Series ([20190813 , np .nan , 20010012 , 20019999 ])
103
+ result = pd .to_datetime (s , format = '%Y%m%d' , errors = 'coerce' ,
104
+ cache = cache )
105
+ expected = Series ([Timestamp ('20190813' ), np .nan , np .nan , np .nan ])
106
+ tm .assert_series_equal (result , expected )
107
+
108
+ # NaN after integers with invalid date values, errors=coerce
109
+ s = Series ([20190813 , 20010012 , np .nan , 20019999 ])
96
110
result = pd .to_datetime (s , format = '%Y%m%d' , errors = 'coerce' ,
97
111
cache = cache )
98
- expected = Series ([np . nan , Timestamp ('20190813' ), np .nan , np .nan ])
112
+ expected = Series ([Timestamp ('20190813' ), np . nan , np .nan , np .nan ])
99
113
tm .assert_series_equal (result , expected )
100
114
101
115
# coercion
0 commit comments