# [R] help in building a function

Uwe Ligges ligges at statistik.uni-dortmund.de
Sat Sep 11 17:18:09 CEST 2004

```Zhen Pang wrote:

>
>
>
>> From: assuncao.senra at portugalmail.com
>> To: R help <r-help at stat.math.ethz.ch>
>> Subject: [R] help in building a function
>> Date: Sat, 11 Sep 2004 14:22:13 +0100
>>
>> hello,
>> i'm new in writting functions in R. I read the R-help manuals but still
>> couldn't get it right.
>> The problem is:
>> I have data on 16 categorical variables for 335 individuals. the data are
>> lines for individuals and columns for variables.
>> I want to calculate the correlation between two variables using a formula
>> given by Agresti for ordinal categorical variables.
>> I have to calcule the value for each pair of variables and save the
>> result in
>> a vector...
>> I wrote the following code
>>
>> X<-as.matrix(X)
>>
>> n=335
>> for (i in 1:15){
>> for (j in i+1:16){
>
>
> note i+1:16 stands for i+(1:16)
>
>> Tab<-table(X[,i],X[,j])
>> u<-1:nrow(Tab)
>> v<-1:ncol(Tab)
>>
>> ml<-margin.table(Tab,1)
>> mc<-margin.table(Tab,2)
>>
>> r1<-u*Tab
>> r2<-sum(v*t(r1))
>
>
> t is useless here, also you did not use t at other place
>
>>
>> r3<-sum(u*ml)*(sum(v*mc)/n
^    ^ ^   ^    ^ = 5, but 5%%2 ....
The syntax error is above: Please count the parentheses!

Please try to debug yourself. R has the tools to make it pretty easy!
As a first step, execute your function line by line, for example ... (as
you always should do during development).

Uwe Ligges

>> r5<-sum((v^2)*mc)-((sum(v*mc))^2)/n
>>
>> r4<-sum((u^2)*ml)-((sum(u*ml))^2)/n
>> r<-(r2-r3)/sqrt(r4*r5)
>>
>> r
>> m=(n-1)*r^2
>> }
>> }
>> The correlation is r.I have a result, but there is a warning regarding r5
>> Plus, it doesnÂ´t perform the loops and I don't know how to save the
>> results in
>> a vector.
>> thanks for any help
>>
>> AssunÃ§Ã£o
>>
>>
>>
>> __________________________________________________________
>>
>> ______________________________________________
>> R-help at stat.math.ethz.ch mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> http://www.R-project.org/posting-guide.html
>
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help