Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何从excel导入数据并使用它?_Python 3.x_Pandas_Python Datetime - Fatal编程技术网

Python 3.x 如何从excel导入数据并使用它?

Python 3.x 如何从excel导入数据并使用它?,python-3.x,pandas,python-datetime,Python 3.x,Pandas,Python Datetime,我有一个包含三列的输入文件:开始日期、结束日期和间隔。输入文件: start date end date interval 01/01/2020 10/01/2020 15 我想在date_range函数中使用这些值。我的 import pandas as pd timeDF = pd.read_excel('inputFile.xlsx') startDate = timeDF['start date'] endDate = timeDF['end date'] int

我有一个包含三列的输入文件:开始日期、结束日期和间隔。输入文件:

start date  end date    interval
01/01/2020  10/01/2020     15
我想在date_range函数中使用这些值。我的

import pandas as pd

timeDF = pd.read_excel('inputFile.xlsx')

startDate = timeDF['start date']
endDate = timeDF['end date']
interval = timeDF['interval']

timeStamp = pd.date_range(start = startDate, end = endDate, freq = str(interval) + 'min')

print(timeStamp)
我得到的错误:

Name: Interval, dtype: int64min

遇到此问题是因为将字符串min连接到interval上,interval是pandas.core.series.series对象

当您调用pd.read_excel'inputFile.xlsx'时,您会得到一个系列对象的字典,因此startDate、endDate和interval都是您应该从中提取数据的系列对象,而不是直接使用

为了避免此错误,可以使用timeDF['name'].values.item获取所有三个变量的值,如下所示:

import pandas as pd

timeDF = pd.read_excel('inputFile.xlsx')

startDate = timeDF['start date'].values.item()
endDate = timeDF['end date'].values.item()
interval = timeDF['interval'].values.item()

timeStamp = pd.date_range(start = startDate, end = endDate, freq = str(interval) + 'min')

print(timeStamp)

输出:

DatetimeIndex(['2020-01-01 00:00:00', '2020-01-01 00:15:00',
               '2020-01-01 00:30:00', '2020-01-01 00:45:00',
               '2020-01-01 01:00:00', '2020-01-01 01:15:00',
               '2020-01-01 01:30:00', '2020-01-01 01:45:00',
               '2020-01-01 02:00:00', '2020-01-01 02:15:00',
               ...
               '2020-09-30 21:45:00', '2020-09-30 22:00:00',
               '2020-09-30 22:15:00', '2020-09-30 22:30:00',
               '2020-09-30 22:45:00', '2020-09-30 23:00:00',
               '2020-09-30 23:15:00', '2020-09-30 23:30:00',
               '2020-09-30 23:45:00', '2020-10-01 00:00:00'],
              dtype='datetime64[ns]', length=26305, freq='15T')