# swegym / pandas-dev__pandas-49120

- taskset: [swegym](https://harnessreport.com/tasks/swegym.md)
- difficulty: hard
- category: debugging
- language: 
- runnable from the site: no
- agent timeout: 3000s

## Results by harness

_none yet_

## Instruction

```
BUG: _guess_datetime_format_for_array doesn't guess if first element is '' or 'NaT'
### Pandas version checks

- [X] I have checked that this issue has not already been reported.

- [X] I have confirmed this bug exists on the [latest version](https://pandas.pydata.org/docs/whatsnew/index.html) of pandas.

- [X] I have confirmed this bug exists on the main branch of pandas.


### Reproducible Example

```python
from pandas.core.tools.datetimes import _guess_datetime_format_for_array
print(_guess_datetime_format_for_array(['NaT', '13-01-2000']))  # prints None
print(_guess_datetime_format_for_array(['', '13-01-2000']))  # prints None
```


### Issue Description

Both `'NaT'` and `''` end up becoming `NaT` in `tslib.array_to_datetime`, so they should be ignored when finding the first non-null element to use to guess the datetime format.

However, currently that doesn't happen, because

https://github.com/pandas-dev/pandas/blob/0106c26529900bad0561efb9c9180f7f016365b0/pandas/core/tools/datetimes.py#L129-L131

doesn't exclude `'NaT'` or `''` when looking for the first non-null element

### Expected Behavior

to get
```
%d-%m-%Y
%d-%m-%Y
```

### Installed Versions

<details>


INSTALLED VERSIONS
------------------
commit           : 16d6e095b9cfb7ca33f47a6cdbcbc8f61fd112dc
python           : 3.8.13.final.0
python-bits      : 64
OS               : Linux
OS-release       : 5.10.102.1-microsoft-standard-WSL2
Version          : #1 SMP Wed Mar 2 00:30:59 UTC 2022
machine          : x86_64
processor        : x86_64
byteorder        : little
LC_ALL           : None
LANG             : en_GB.UTF-8
LOCALE           : en_GB.UTF-8

pandas           : 1.6.0.dev0+346.g16d6e095b9
numpy            : 1.23.3
pytz             : 2022.2.1
dateutil         : 2.8.2
setuptools       : 59.8.0
pip              : 22.2.2
Cython           : 0.29.32
pytest           : 7.1.3
hypothesis       : 6.54.6
sphinx           : 4.5.0
blosc            : None
feather          : None
xlsxwriter       : 3.0.3
lxml.etree       : 4.9.1
html5lib         : 1.1
pymysql          : 1.0.2
psycopg2         : 2.9.3
jinja2           : 3.0.3
IPython          : 8.5.0
pandas_datareader: 0.10.0
bs4              : 4.11.1
bottleneck       : 1.3.5
brotli           : 
fastparquet      : 0.8.3
fsspec           : 2021.11.0
gcsfs            : 2021.11.0
matplotlib       : 3.6.0
numba            : 0.56.2
numexpr          : 2.8.3
odfpy            : None
openpyxl         : 3.0.10
pandas_gbq       : 0.17.8
pyarrow          : 9.0.0
pyreadstat       : 1.1.9
pyxlsb           : 1.0.9
s3fs             : 2021.11.0
scipy            : 1.9.1
snappy           : 
sqlalchemy       : 1.4.41
tables           : 3.7.0
tabulate         : 0.8.10
xarray           : 2022.9.0
xlrd             : 2.0.1
xlwt             : 1.3.0
zstandard        : 0.18.0
tzdata           : None
None


</details>
```
---
Harness Report runs agent harnesses from their GitHub repos on Harbor tasks and records every model call. Every page is also `.md` and `.json`; index: https://harnessreport.com/llms.txt · MCP: https://harnessreport.com/mcp
