Python 使用日期时间子选择的日期范围出错

Python 使用日期时间子选择的日期范围出错,python,pandas,date-range,Python,Pandas,Date Range,我需要创建一个日期向量,pd.date_范围指定日期值的最小值和最大值。 日期值来自对数据帧对象执行的子选择ds 这是我写的代码: 请注意,ds中的Date来自 ds = pd.read_excel("data.xlsx",sheet_name='all') # Read the Excel file ds['Date'] = pd.to_datetime(ds['Date'], infer_datetime_format=True) 这是for循环中的部分,其中x在名称列表中循环 for

我需要创建一个日期向量,pd.date_范围指定日期值的最小值和最大值。 日期值来自对数据帧对象执行的子选择
ds

这是我写的代码:

请注意,
ds
中的
Date
来自

ds = pd.read_excel("data.xlsx",sheet_name='all') # Read the Excel file
ds['Date'] = pd.to_datetime(ds['Date'], infer_datetime_format=True) 
这是for循环中的部分,其中
x
在名称列表中循环

for x in lofNames:
    date_tmp = ds.loc[ds['Security Name']==x,['Date']]
    mindate = date_tmp.min()
    maxdate = date_tmp.max()
    date = pd.date_range(start=mindate, end=maxdate, freq='D')   
这是我得到的错误:

Traceback (most recent call last):

  File "<ipython-input-8-1f56d07b5a74>", line 4, in <module>
    date = pd.date_range(start=mindate, end=maxdate, freq='D')

  File "/Users/marco/opt/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/datetimes.py", line 1180, in date_range
    **kwargs,

  File "/Users/marco/opt/anaconda3/lib/python3.7/site-packages/pandas/core/arrays/datetimes.py", line 365, in _generate_range
    start = Timestamp(start)

  File "pandas/_libs/tslibs/timestamps.pyx", line 418, in pandas._libs.tslibs.timestamps.Timestamp.__new__

  File "pandas/_libs/tslibs/conversion.pyx", line 329, in pandas._libs.tslibs.conversion.convert_to_tsobject

TypeError: Cannot convert input [Date   2007-01-09
dtype: datetime64[ns]] of type <class 'pandas.core.series.Series'> to Timestamp
回溯(最近一次呼叫最后一次):
文件“”,第4行,在
日期=pd.date\u范围(开始=mindate,结束=maxdate,频率=D')
文件“/Users/marco/opt/anaconda3/lib/python3.7/site packages/pandas/core/index/datetimes.py”,第1180行,日期范围
**夸尔斯,
文件“/Users/marco/opt/anaconda3/lib/python3.7/site packages/pandas/core/arrays/datetimes.py”,第365行,在生成范围内
开始=时间戳(开始)
文件“pandas/_-libs/tslibs/timestamps.pyx”,第418行,在pandas._-libs.tslibs.timestamps.Timestamp.\uu新__
文件“pandas/_-libs/tslibs/conversion.pyx”,第329行,在pandas._-libs.tslibs.conversion.conversion_-to_-tsobject中
类型错误:无法转换输入[日期2007-01-09
dtype:datetime64[ns]]的类型为时间戳
怎么了?
谢谢

这里返回了一列
DataFrame
而不是
Series
,因此接下来
min
max
返回了一项
Series
,因此引发了错误:

date_tmp = ds.loc[ds['Security Name']==x,['Date']]
正确的方式被删除
[]

date_tmp = ds.loc[ds['Security Name']==x,'Date']

这里返回的是一列
DataFrame
而不是
Series
,因此接下来
min
max
返回一项
Series
而不是
scalar
,因此引发错误:

date_tmp = ds.loc[ds['Security Name']==x,['Date']]
正确的方式被删除
[]

date_tmp = ds.loc[ds['Security Name']==x,'Date']