[R] Call to a function
Bert Gunter
bgunter.4567 at gmail.com
Wed Jun 24 02:53:33 CEST 2015
?with
e.g. with(mydata,aaa(v1))
-- Bert
Bert Gunter
"Data is not information. Information is not knowledge. And knowledge
is certainly not wisdom."
-- Clifford Stoll
On Tue, Jun 23, 2015 at 2:39 PM, Steven Yen <syen04 at gmail.com> wrote:
> Dear Members
> I have a data frame as generated below. I like to be able to call a
> function both with a vector and a vector (mydata$v1) in that data frame
> (v1). The first call works, but the second does not. Can someone help me
> with the second call? Thanks!!
>
> ---
> mydata<-data.frame(matrix(1:20,ncol=2))
> colnames(mydata) <-c("v1","v2")
> summary(mydata)
>
> aaa<-function(data,w=w){
> if(is.vector(w)){
> out<-mean(w)
> } else {
> out<-mean(data[wt])
> }
> return(out)
> }
>
> aaa(mydata,mydata$v1)
> aaa(mydata,"v1") # want this call to work
>
> ---
> Printout with error message
>
>> mydata<-data.frame(matrix(1:20,ncol=2))
>> colnames(mydata) <-c("v1","v2")
>> summary(mydata)
>
> v1 v2
> Min. : 1.00 Min. :11.00
> 1st Qu.: 3.25 1st Qu.:13.25
> Median : 5.50 Median :15.50
> Mean : 5.50 Mean :15.50
> 3rd Qu.: 7.75 3rd Qu.:17.75
> Max. :10.00 Max. :20.00
>>
>>
>> aaa<-function(data,w=w){
>
> + if(is.vector(w)){
> + out<-mean(w)
> + } else {
> + out<-mean(data[wt])
> + }
> + return(out)
> + }
>>
>> aaa(mydata,mydata$v1)
>
> [1] 5.5
>>
>> aaa(mydata,"v1")
>
> [1] NA
> Warning message:
> In mean.default(w) : argument is not numeric or logical: returning NA
>>
>>
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.
More information about the R-help
mailing list