@@ -1342,6 +1342,9 @@ def maybe_cast_to_datetime(value, dtype: Optional[DtypeObj]):
1342
1342
from pandas .core .tools .datetimes import to_datetime
1343
1343
from pandas .core .tools .timedeltas import to_timedelta
1344
1344
1345
+ if not is_list_like (value ):
1346
+ raise TypeError ("value must be listlike" )
1347
+
1345
1348
if dtype is not None :
1346
1349
is_datetime64 = is_datetime64_dtype (dtype )
1347
1350
is_datetime64tz = is_datetime64tz_dtype (dtype )
@@ -1370,13 +1373,6 @@ def maybe_cast_to_datetime(value, dtype: Optional[DtypeObj]):
1370
1373
raise TypeError (
1371
1374
f"cannot convert datetimelike to dtype [{ dtype } ]"
1372
1375
)
1373
- elif is_datetime64tz :
1374
-
1375
- # our NaT doesn't support tz's
1376
- # this will coerce to DatetimeIndex with
1377
- # a matching dtype below
1378
- if is_scalar (value ) and isna (value ):
1379
- value = [value ]
1380
1376
1381
1377
elif is_timedelta64 and not is_dtype_equal (dtype , TD64NS_DTYPE ):
1382
1378
@@ -1389,9 +1385,7 @@ def maybe_cast_to_datetime(value, dtype: Optional[DtypeObj]):
1389
1385
else :
1390
1386
raise TypeError (f"cannot convert timedeltalike to dtype [{ dtype } ]" )
1391
1387
1392
- if is_scalar (value ):
1393
- value = maybe_unbox_datetimelike (value , dtype )
1394
- elif not is_sparse (value ):
1388
+ if not is_sparse (value ):
1395
1389
value = np .array (value , copy = False )
1396
1390
1397
1391
# have a scalar array-like (e.g. NaT)
0 commit comments