2017-01-30 2 views
0

まずは 申し訳ありませんが、この質問が愚かに聞こえるかもしれません...または私は間違って書式を設定しました。私かどうか、その第一、第二などの観察によれば、すべての行をカウントし、列挙列を作成するRが必要日付による所与のIDの観測値の集計R

Value <- c(230, 254, 300, 700, 150, 100) 
Date <- as.Date(c("01/02/2010", "07/07/2011", "14/12/2011", "23/01/2011", "31/08/2010", "06/05/2010") 
      , "%d/%m/%Y") 
IDnum <- c(001, 002, 001, 003, 003, 001) 
MyData <- data.frame(Value, Date, IDnum) 

:次のコードを使用して作成

Value  Date IDnum 
1 230 2010-02-01  1 
2 254 2011-07-07  2 
3 300 2011-12-14  1 
4 700 2011-01-23  3 
5 150 2010-08-31  3 
6 100 2010-05-06  1 

: 私は、次のデータを持っています指定されたIDnumの日付によってこのように私に似た何かを与える:

Value  Date IDnum Obs 
1 230 2010-02-01  1 1 
2 254 2011-07-07  2 1 
3 300 2011-12-14  1 3 
4 700 2011-01-23  3 2 
5 150 2010-08-31  3 1 
6 100 2010-05-06  1 2 

おかげ

+0

をこの質問は確かに重複になります!あなたは十分な@ Andrewを検索しませんでした –

+4

@ joel.wilsonなぜそれを重複としてマークしませんでしたか? – Jaap

答えて

-1
library(data.table) 
df$Date <- as.Date(df$Date, format = "%Y-%m-%d") 
setDT(df)[, Obs := order(Date),by = .(IDnum)] 

library(dplyr) 
df %>% group_by(IDnum) %>% mutate(Obs = order(Date)) 

# Value  Date IDnum Obs 
#1: 230 2010-02-01  1 1 
#2: 254 2011-07-07  2 1 
#3: 300 2011-12-14  1 3 
#4: 700 2011-01-23  3 2 
#5: 150 2010-08-31  3 1 
#6: 100 2010-05-06  1 2 
+0

あなたが落書きした人に、私はあなたが落ち着いたと思っていません。 –

関連する問題