Python - Pandas - 从SubSelect Mask Not Index Error

时间:2018-03-29 17:12:24

标签: python pandas

我正在尝试根据为下面的日期变量设置的用户值设置新的dataFrame。原始数据日期列(Date)以下列格式7/5/17进入pandas。按照我的假设是最佳做法,我将字段转换为datetime格式,生成一个yyyy-mm-dd格式的数组'2017-12-01', '2017-12-02', '2017-12-03', '2017-12-04','2017-12-05',。在这里,我尝试在开始日期和结束日期内使用date_range来选择我的dataFrame,然后仅显示使用变量Xy选择的列。但是,我在子选择行生成raise KeyError('{mask} not in index'.format(mask=objarr[mask]))。我的代码中有什么价值可能会引发错误?是由于datetime格式化吗?

# date column and conversion to datetime64[ns]
dateColumn = pd.to_datetime(rawData['Date'])

# date start
dateStart = '12/1/17'

# date end
dateEnd = '2/28/18'

# date range
dateRange = pd.date_range(dateStart, dateEnd)


# dependent variable
y = 'Leads'

# independent variable(s)
X = 'Clicks'

在12/1/17和2/28/18之间的日期行中选择x和y列:

print(rawData[rawData[dateColumn].isin(dateRange)][X,y])

1 个答案:

答案 0 :(得分:1)

您正在使用列而不是列名称进行索引:

print(rawData[dateColumn.isin(dateRange)][[X,y]])