Quantcast
Channel: Active questions tagged r - Stack Overflow
Viewing all articles
Browse latest Browse all 201894

Count observations per group satisfying a different condition for each row

$
0
0

I have a dataframe that looks like this one

state start end  date treat
1     1999  2000 2001 1
1     1998  2000 2001 1
1     2000  2003 NA   0
2     2001  2002 NA   0
2     2002  2004 2003 1
2     2003  2004 2005 1
3     2002  2004 2006 1
3     2003  2004 NA   0
3     2005  2007 NA   0

I want to group it by state identifier and, for each state, I want compute the number of treated observation (treat) the date of which lies in between start and end.

In other words I want to get the following

state start end  date treat result
1     1999  2000 2001 1     0
1     1998  2000 2001 1     0
1     2000  2003 NA   0     2
2     2001  2002 NA   0     0
2     2002  2004 2003 1     1
2     2003  2004 2005 1     0
3     2002  2004 2006 1     0
3     2003  2004 NA   0     0
3     2005  2008 NA   0     1

For instance, result in the first row is equal to 0 because within state = 1 there is no date between 1999 and 2000. On the other hand, result in the last row is equal to one because within state 3 I have one treated unit the date of which lies between 2005 and 2008 (in particular date = 2006 in the 7th row).

Thank you very much for your help.


Viewing all articles
Browse latest Browse all 201894

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>