我创建了一个在相当大的数据集中执行的while循环。循环是这样的:
m = 9957 #Number of Events
n = 814 #Number of Hotels
Day.Zero = as.data.frame(matrix(0, 9957, 814))
其中:
London.Bookings$No.of.Rooms
简要解释,对于日期和酒店的每个组合(从其他两个数据框中提取),从列Types#memberType
中产生总和并将其存入矩阵的相应行。
循环似乎没有错误地运行,但是在5分钟后停止它仍然在运行并且远未完成!
我想知道如何将一个适用的函数系列用作替代函数,以便更快地完成。
谢谢!
答案 0 :(得分:1)
可能,
xtabs(No.of.Rooms ~ Stay.Date + Legacy.Hotel, data = London.Bookings)
为您提供类似于您想要的东西。
答案 1 :(得分:0)
使用库dplyr
,您可以执行以下操作(假设您的输入数据框具有此类列名 - 从您的代码/问题中模糊地解释):
library(dplyr)
London.Bookings %>% group_by(Legacy.Hotel.Code, Stay.Date) %>% summarise(Total.No.of.Rooms = sum(No.of.Rooms))