【发布时间】:2018-02-09 21:53:07
【问题描述】:
我有这个数据框:
> head(merged.tables)
Store DayOfWeek Date Sales Customers Open Promo StateHoliday SchoolHoliday StoreType
1 1 5 2015-07-31 5263 555 1 1 0 1 c
2 1 6 2013-01-12 4952 646 1 0 0 0 c
3 1 5 2014-01-03 4190 552 1 0 0 1 c
4 1 3 2014-12-03 6454 695 1 1 0 0 c
5 1 3 2013-11-13 3310 464 1 0 0 0 c
6 1 7 2013-10-27 0 0 0 0 0 0 c
Assortment CompetitionDistance CompetitionOpenSinceMonth CompetitionOpenSinceYear Promo2
1 a 1270 9 2008 0
2 a 1270 9 2008 0
3 a 1270 9 2008 0
4 a 1270 9 2008 0
5 a 1270 9 2008 0
6 a 1270 9 2008 0
Promo2SinceWeek Promo2SinceYear PromoInterval
1 NA NA
2 NA NA
3 NA NA
4 NA NA
5 NA NA
6 NA NA
然后我想提取一个数据框,该数据框显示 Open 等于 1 和 StoreType 时的 Sales 向量平均值。 我使用这个命令是因为它是我认为最致命的:
merged.tables[StateHoliday==1,mean(na.omit(Sales)),by=StoreType]
但是我收到了这个错误:
[.data.frame(merged.tables, StateHoliday == 0, mean(na.omit(Sales)), : 未使用的参数(by = StoreType)
我搜索但我没有得到这个错误的答案。感谢您的帮助!
【问题讨论】:
-
您正在使用
[.data.table的语法。看来merged.tables不是data.table-object。使用setDT() -
您可以使用
dput让我们重新创建您的数据吗?
标签: r data.table