我正在尝试在数据框中创建一个新的日期列。日期列的格式如下,例如“2019-02-04”
def fiscal_date(row):
if row['Date'] >= '2018-02-01' and row['Date'] < '2018-05-01':
return 'FY19 Q1'
if row['Date'] >= '2018-05-01' and row['Date'] < '2018-08-01':
return 'FY19 Q2'
if row['Date'] >= '2018-08-01' and row['Date'] < '2018-11-01':
return 'FY19 Q3'
当我尝试应用函数时,data['Fiscal']=data.apply(Fiscal\u date,axis=1) 获取此错误: 类型错误:(“'>;=”“Timestamp”和“str”的实例之间不支持(“发生在索引0上”)
您可以在第二个比较中看到,您从未指定行
试着写
row['Date'] < '2018-05-01'
,而不是只写['Date'] < '2018-05-01'
像这样:
我假设错误来自这一部分:
if row['Date'] >= '2018-02-01'
,您试图将row['Date']
这是时间戳与'2018-02-01'
这是字符串进行比较。'2018-02-01'
应转换为datetime对象:相关问题 更多 >
编程相关推荐