Skip to content

Help needed in R

7 messages · AbouEl-Makarim Aboueissa, Henrique Dallazuanna, Charles Annis, P.E. +1 more

#
Dear Ellison:

it did not do it.

I edited my previous email to make my question more clear.


The out put should be: (2,11,33,43,46)

For example: 

number of all observations less than 1 with indicator 1 (including those 1 with indicator 1  but not 1 with indicator 0) =2
                    
number of all observations less than 2 with indicator 1 (including those 2 with indicator 1 but not 2 with indicator 0) =11
                   
 number of all observations less than 5 with indicator 1 (including those 5 with indicator 1 but not 5 with indicator 0) =33
                    
number of all observations less than 10 with indicator 1 (including those 10 with indicator 1 but not 10 with indicator 0) =43
                    
number of all observations less than 15 with indicator 1 (including those 15 with indicator 1 but not 15 with indicator 0) =46


(1, 2,5,10,15) are the values in column one with indicator 1 in column two.


which means I need to create a vector(2,11,33,43,46) for the data in column one.




==========================
AbouEl-Makarim Aboueissa, Ph.D.
Assistant Professor of Statistics
Department of Mathematics & Statistics
University of Southern Maine
96 Falmouth Street
P.O. Box 9300
Portland, ME 04104-9300

Tel: (207) 228-8389
Fax: (207) 780-5607
Email: aaboueissa at usm.maine.edu
          aboueiss at yahoo.com
Office: 301C Payson Smith
table(data[data[,2]==1,1])
15:20:21 >>>
Dear ALL:


How I can find the number of observations less than each value in
column one with indicator 1 in column two. Please see the data below.


For example: number of observations less than 1 with indicator 1
(including those 1 with indicator 1) =2
                    number of observations less than 2 with indicator 1
(including those 2 with indicator 1) =11
                    number of observations less than 5 with indicator 1
(including those 5 with indicator 1) =33
                    number of observations less than 10 with indicator
1 (including those 10 with indicator 1) =43
                    number of observations less than 15 with indicator
1 (including those 15 with indicator 1) =46

(1, 2,5,10,15) are the values in column one with indicator 1 in column
two.


which means I need to create a vector(2,11,33,43,46) for the data in
column one.

With many thanks.

Abou

Here is the data:
===========

Consider the following matrix:

data<-matrix(c(2,2,12,2,1,10,10,4,10,1,1,2,2,1,2,10,3,1,1,1,3,5,17,23,9,9,3,3,15,5,
		  4,5,5,5,4,8,1,15,3,3,1,6,3,6,3,4,5,14,4,
		 
0,0,0,0,0,1,1,0,1,1,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,
		  0,0,0,0,0,0,0,0,0,0,0,0,0,0),49,2)


      [,1] [,2]
 [1,]    2    0
 [2,]    2    0
 [3,]   12    0
 [4,]    2    0
 [5,]    1    0
 [6,]   10    1
 [7,]   10    1
 [8,]    4    0
 [9,]   10    1
[10,]    1    1
[11,]    1    0
[12,]    2    1
[13,]    2    1
[14,]    1    0
[15,]    2    0
[16,]   10    1
[17,]    3    0
[18,]    1    1
[19,]    1    0
[20,]    1    0
[21,]    3    0
[22,]    5    1
[23,]   17    0
[24,]   23    0
[25,]    9    0
[26,]    9    0
[27,]    3    0
[28,]    3    0
[29,]   15    1
[30,]    5    1
[31,]    4    0
[32,]    5    1
[33,]    5    1
[34,]    5    1
[35,]    4    0
[36,]    8    0
[37,]    1    0
[38,]   15    0
[39,]    3    0
[40,]    3    0
[41,]    1    0
[42,]    6    0
[43,]    3    0
[44,]    6    0
[45,]    3    0
[46,]    4    0
[47,]    5    0
[48,]   14    0
[49,]    4    0




==========================
AbouEl-Makarim Aboueissa, Ph.D.
Assistant Professor of Statistics
Department of Mathematics & Statistics
University of Southern Maine
96 Falmouth Street
P.O. Box 9300
Portland, ME 04104-9300

Tel: (207) 228-8389
Fax: (207) 780-5607
Email: aaboueissa at usm.maine.edu 
          aboueiss at yahoo.com 
Office: 301C Payson Smith

______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help 
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html 
and provide commented, minimal, self-contained, reproducible code.

*******************************************************************
This email and any attachments are confidential. Any use...{{dropped:8}}
#
For me is not very clear, but if I understand:

sapply(sort(unique(data[data[,2]==1,1])),
               function(x)sum(data[data[,2]==1 & data[,1] <= x, 1]))

But the output is:
2  6 31 71 86
On 03/03/2008, AbouEl-Makarim Aboueissa <aaboueissa at usm.maine.edu> wrote:

  
    
#
Dear ALL:


Please see below. I hope this will make it more clear.

[1,]    1    1
 [2,]    1    1          number of all observations less than 1 with
indicator 1 (including those 1 with indicator 1  but not 1 with
indicator 0)=2 
[3,]    1    0
 [4,]    1    0
 [5,]    1    0
 [6,]    1    0
 [7,]    1    0
 [8,]    1    0
 [9,]    1    0
[10,]    2    1
[11,]    2    1        number of all observations less than 2 with
indicator 1 (including those 2 with indicator 1  but not 2 with
indicator 0)=11
[12,]    2    0
[13,]    2    0
[14,]    2    0
[15,]    2    0
[16,]    3    0
[17,]    3    0
[18,]    3    0
[19,]    3    0
[20,]    3    0
[21,]    3    0
[22,]    3    0
[23,]    3    0
[24,]    4    0
[25,]    4    0
[26,]    4    0
[27,]    4    0
[28,]    4    0
[29,]    5    1
[30,]    5    1
[31,]    5    1
[32,]    5    1
[33,]    5    1   number of all observations less than 5 with indicator
1 (including those 5 with indicator 1  but not 5 with indicator 0)=33
[34,]    5    0
[35,]    6    0
[36,]    6    0
[37,]    8    0
[38,]    9    0
[39,]    9    0
[40,]   10    1
[41,]   10    1
[42,]   10    1
[43,]   10    1  number of all observations less than 10 with indicator
1 (including those 10 with indicator 1  but not 10 with indicator 0)=43
[44,]   12    0
[45,]   14    0
[46,]   15    1     number of all observations less than 15 with
indicator 1 (including those 15 with indicator 1  but not 15 with
indicator 0)=46
[47,]   15    0
[48,]   17    0
[49,]   23    0


How I can write an R code to do this.

Thanks

Abou


==========================
AbouEl-Makarim Aboueissa, Ph.D.
Assistant Professor of Statistics
Department of Mathematics & Statistics
University of Southern Maine
96 Falmouth Street
P.O. Box 9300
Portland, ME 04104-9300

Tel: (207) 228-8389
Fax: (207) 780-5607
Email: aaboueissa at usm.maine.edu
          aboueiss at yahoo.com
Office: 301C Payson Smith
For me is not very clear, but if I understand:

sapply(sort(unique(data[data[,2]==1,1])),
               function(x)sum(data[data[,2]==1 & data[,1] <= x, 1]))

But the output is:
2  6 31 71 86



On 03/03/2008, AbouEl-Makarim Aboueissa <aaboueissa at usm.maine.edu>
wrote:
those 1 with indicator 1  but not 1 with indicator 0) =2
those 2 with indicator 1 but not 2 with indicator 0) =11
those 5 with indicator 1 but not 5 with indicator 0) =33
those 10 with indicator 1 but not 10 with indicator 0) =43
those 15 with indicator 1 but not 15 with indicator 0) =46
column two.
column one.
03/03/2008
below.
1
1
indicator
indicator
column
in
data<-matrix(c(2,2,12,2,1,10,10,4,10,1,1,2,2,1,2,10,3,1,1,1,3,5,17,23,9,9,3,3,15,5,
0,0,0,0,0,1,1,0,1,1,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,
use...{{dropped:8}}
http://www.R-project.org/posting-guide.html

  
    
#
perhaps you need something like sum(X[X < 1])



Charles Annis, P.E.

Charles.Annis at StatisticalEngineering.com
phone: 561-352-9699
eFax:  614-455-3265
http://www.StatisticalEngineering.com
 

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On
Behalf Of AbouEl-Makarim Aboueissa
Sent: Monday, March 03, 2008 11:55 AM
To: Henrique Dallazuanna
Cc: r-help at r-project.org; S Ellison
Subject: Re: [R] Help needed in R

Dear ALL:


Please see below. I hope this will make it more clear.

[1,]    1    1
 [2,]    1    1          number of all observations less than 1 with
indicator 1 (including those 1 with indicator 1  but not 1 with
indicator 0)=2 
[3,]    1    0
 [4,]    1    0
 [5,]    1    0
 [6,]    1    0
 [7,]    1    0
 [8,]    1    0
 [9,]    1    0
[10,]    2    1
[11,]    2    1        number of all observations less than 2 with
indicator 1 (including those 2 with indicator 1  but not 2 with
indicator 0)=11
[12,]    2    0
[13,]    2    0
[14,]    2    0
[15,]    2    0
[16,]    3    0
[17,]    3    0
[18,]    3    0
[19,]    3    0
[20,]    3    0
[21,]    3    0
[22,]    3    0
[23,]    3    0
[24,]    4    0
[25,]    4    0
[26,]    4    0
[27,]    4    0
[28,]    4    0
[29,]    5    1
[30,]    5    1
[31,]    5    1
[32,]    5    1
[33,]    5    1   number of all observations less than 5 with indicator
1 (including those 5 with indicator 1  but not 5 with indicator 0)=33
[34,]    5    0
[35,]    6    0
[36,]    6    0
[37,]    8    0
[38,]    9    0
[39,]    9    0
[40,]   10    1
[41,]   10    1
[42,]   10    1
[43,]   10    1  number of all observations less than 10 with indicator
1 (including those 10 with indicator 1  but not 10 with indicator 0)=43
[44,]   12    0
[45,]   14    0
[46,]   15    1     number of all observations less than 15 with
indicator 1 (including those 15 with indicator 1  but not 15 with
indicator 0)=46
[47,]   15    0
[48,]   17    0
[49,]   23    0


How I can write an R code to do this.

Thanks

Abou


==========================
AbouEl-Makarim Aboueissa, Ph.D.
Assistant Professor of Statistics
Department of Mathematics & Statistics
University of Southern Maine
96 Falmouth Street
P.O. Box 9300
Portland, ME 04104-9300

Tel: (207) 228-8389
Fax: (207) 780-5607
Email: aaboueissa at usm.maine.edu
          aboueiss at yahoo.com
Office: 301C Payson Smith
For me is not very clear, but if I understand:

sapply(sort(unique(data[data[,2]==1,1])),
               function(x)sum(data[data[,2]==1 & data[,1] <= x, 1]))

But the output is:
2  6 31 71 86



On 03/03/2008, AbouEl-Makarim Aboueissa <aaboueissa at usm.maine.edu>
wrote:
those 1 with indicator 1  but not 1 with indicator 0) =2
those 2 with indicator 1 but not 2 with indicator 0) =11
those 5 with indicator 1 but not 5 with indicator 0) =33
those 10 with indicator 1 but not 10 with indicator 0) =43
those 15 with indicator 1 but not 15 with indicator 0) =46
column two.
column one.
03/03/2008
below.
1
1
indicator
indicator
column
in
data<-matrix(c(2,2,12,2,1,10,10,4,10,1,1,2,2,1,2,10,3,1,1,1,3,5,17,23,9,9,3,
3,15,5,
0,0,0,0,0,1,1,0,1,1,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,
use...{{dropped:8}}
http://www.R-project.org/posting-guide.html

  
    
#
I believe I wrote too hastily and that what you want is sum(X < 1) which
will sum the indicator (T/F) function.

Charles Annis, P.E.

Charles.Annis at StatisticalEngineering.com
phone: 561-352-9699
eFax:  614-455-3265
http://www.StatisticalEngineering.com
 

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On
Behalf Of AbouEl-Makarim Aboueissa
Sent: Monday, March 03, 2008 11:55 AM
To: Henrique Dallazuanna
Cc: r-help at r-project.org; S Ellison
Subject: Re: [R] Help needed in R

Dear ALL:


Please see below. I hope this will make it more clear.

[1,]    1    1
 [2,]    1    1          number of all observations less than 1 with
indicator 1 (including those 1 with indicator 1  but not 1 with
indicator 0)=2 
[3,]    1    0
 [4,]    1    0
 [5,]    1    0
 [6,]    1    0
 [7,]    1    0
 [8,]    1    0
 [9,]    1    0
[10,]    2    1
[11,]    2    1        number of all observations less than 2 with
indicator 1 (including those 2 with indicator 1  but not 2 with
indicator 0)=11
[12,]    2    0
[13,]    2    0
[14,]    2    0
[15,]    2    0
[16,]    3    0
[17,]    3    0
[18,]    3    0
[19,]    3    0
[20,]    3    0
[21,]    3    0
[22,]    3    0
[23,]    3    0
[24,]    4    0
[25,]    4    0
[26,]    4    0
[27,]    4    0
[28,]    4    0
[29,]    5    1
[30,]    5    1
[31,]    5    1
[32,]    5    1
[33,]    5    1   number of all observations less than 5 with indicator
1 (including those 5 with indicator 1  but not 5 with indicator 0)=33
[34,]    5    0
[35,]    6    0
[36,]    6    0
[37,]    8    0
[38,]    9    0
[39,]    9    0
[40,]   10    1
[41,]   10    1
[42,]   10    1
[43,]   10    1  number of all observations less than 10 with indicator
1 (including those 10 with indicator 1  but not 10 with indicator 0)=43
[44,]   12    0
[45,]   14    0
[46,]   15    1     number of all observations less than 15 with
indicator 1 (including those 15 with indicator 1  but not 15 with
indicator 0)=46
[47,]   15    0
[48,]   17    0
[49,]   23    0


How I can write an R code to do this.

Thanks

Abou


==========================
AbouEl-Makarim Aboueissa, Ph.D.
Assistant Professor of Statistics
Department of Mathematics & Statistics
University of Southern Maine
96 Falmouth Street
P.O. Box 9300
Portland, ME 04104-9300

Tel: (207) 228-8389
Fax: (207) 780-5607
Email: aaboueissa at usm.maine.edu
          aboueiss at yahoo.com
Office: 301C Payson Smith
For me is not very clear, but if I understand:

sapply(sort(unique(data[data[,2]==1,1])),
               function(x)sum(data[data[,2]==1 & data[,1] <= x, 1]))

But the output is:
2  6 31 71 86



On 03/03/2008, AbouEl-Makarim Aboueissa <aaboueissa at usm.maine.edu>
wrote:
those 1 with indicator 1  but not 1 with indicator 0) =2
those 2 with indicator 1 but not 2 with indicator 0) =11
those 5 with indicator 1 but not 5 with indicator 0) =33
those 10 with indicator 1 but not 10 with indicator 0) =43
those 15 with indicator 1 but not 15 with indicator 0) =46
column two.
column one.
03/03/2008
below.
1
1
indicator
indicator
column
in
data<-matrix(c(2,2,12,2,1,10,10,4,10,1,1,2,2,1,2,10,3,1,1,1,3,5,17,23,9,9,3,
3,15,5,
0,0,0,0,0,1,1,0,1,1,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,
use...{{dropped:8}}
http://www.R-project.org/posting-guide.html

  
    
#
It works.

Thank you so much.

Abou



==========================
AbouEl-Makarim Aboueissa, Ph.D.
Assistant Professor of Statistics
Department of Mathematics & Statistics
University of Southern Maine
96 Falmouth Street
P.O. Box 9300
Portland, ME 04104-9300

Tel: (207) 228-8389
Fax: (207) 780-5607
Email: aaboueissa at usm.maine.edu
          aboueiss at yahoo.com
Office: 301C Payson Smith
I guess you are looking for the number of rows satisfying the following
condition.
Assuming that you have a cutoff k = 1, 2, 5, 10, 15
1) x[i,1] < k regardless of the value of x[i,2], OR
2) x[i,1] == k and x[i,2] == 1

Here is my take on this problem. It is not elegant but it seems to do the
job.
<-matrix(c(2,2,12,2,1,10,10,4,10,1,1,2,2,1,2,10,3,1,1,1,3,5,17,23,9,9,3,3,15,5,
+                  4,5,5,5,4,8,1,15,3,3,1,6,3,6,3,4,5,14,4,
+
0,0,0,0,0,1,1,0,1,1,0,1,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,1,0,
+                  0,0,0,0,0,0,0,0,0,0,0,0,0,0),49,2)
+     x1 <- x[,1]
+     x2 <- x[,2]
+     sum(x1 < cutoff | ((x1 == cutoff )& (x2==1)))
+ }
[1]  2 11 33 43 46