一連のイベントが与えられた場合、特定の期間に特定の数のイベントが発生したかどうかを判断するアルゴリズムはありますか? たとえば、特定のユーザー ログインのリストで、10 を超えるログインを含む 30 日間の期間はありますか?
これを行うためのいくつかの強引な方法を思いつくことができます.通常のグーグル検索では見つけられなかった、この種の問題のアルゴリズムまたは名前があるかどうか疑問に思っています.
一連のイベントが与えられた場合、特定の期間に特定の数のイベントが発生したかどうかを判断するアルゴリズムはありますか? たとえば、特定のユーザー ログインのリストで、10 を超えるログインを含む 30 日間の期間はありますか?
これを行うためのいくつかの強引な方法を思いつくことができます.通常のグーグル検索では見つけられなかった、この種の問題のアルゴリズムまたは名前があるかどうか疑問に思っています.
一般にビニングと呼ばれます。これは基本的に、 countを集計関数として使用して、インデックス ( eg ) に対して 1 つの変数 ( eg ) を集計しています。 events
time
データを提供しなかったので、簡単な例を示します。
# Start with a dataframe of dates and number of events
data <- data.frame(date=paste('2013', rep(1:12, each=20), rep(1:20, times=12), sep='-'),
logins=rpois(12*20, 5))
# Make sure to store dates as class Date, it can be useful for other purposes
data$date <- as.Date(data$date)
# Now bin it. This is just a dirty trick, exactly how you do it depends on what you want.
# Lets just sum the number of events for each month
data$month <- sub('-', '', substr(data$date, 6, 7))
aggregate(logins~month, data=data, sum, na.rm=TRUE)
それはあなたが望んでいたものですか?