[R] apply min function rowwise

moleps moleps2 at gmail.com
Sat Jun 5 20:14:13 CEST 2010


Appreciate it...

//M

On 5. juni 2010, at 20.11, Joshua Wiley wrote:

> On Sat, Jun 5, 2010 at 10:22 AM, moleps <moleps2 at gmail.com> wrote:
>> thx.
>> 
>> It was only the first instance that was class date. The rest were factors. So that explains it.
>> 
>> If I want to change the rest in vec into class date (there are many of them...)
>> 
>> neither  as.Date(canc[,vec],"%d.%m.%Y") nor sapply(canc[,vec],FUN=function(x) as.date(x,"%d.%m.%Y")) works
>> 
>> What is the easy solution to this?
> 
> This is the nicest solution that comes to mind:
> 
> as.data.frame(lapply(X=samp.dat, FUN=as.Date, format="%d.%m.%Y"))
> 
> I believe the problem is that sapply() coerces the results (by default
> when simplify=TRUE) using as.vector() leaving you with the number of
> days since the origin.  Anyway, using as.data.frame() on the list
> output from lapply() seems to work.
> 
> Josh
> 
>> 
>> Regards,
>> 
>> //M
>> 
>> 
>> 
>> On 5. juni 2010, at 18.30, Joshua Wiley wrote:
>> 
>>> Hello M,
>>> 
>>> My guess is that it has something to do with the class of the
>>> variables.  Perhaps you could provide a small sample dataframe?  Also
>>> you might try running str() on your data frame and seeing if the
>>> results are what you would expect.  As a side note, it is not
>>> necessary to make an anonymous function here, as you are allowed to
>>> pass arguments to the function applied.
>>> 
>>> apply(canc[,vec],1, min, na.rm=TRUE)
>>> 
>>> Best regards,
>>> 
>>> Josh
>>> 
>>> On Sat, Jun 5, 2010 at 8:30 AM, moleps <moleps2 at gmail.com> wrote:
>>>> I´m trying to tease out the minimum value from a row in a dataframe where all the variables are dates.
>>>> 
>>>> apply(canc[,vec],1,function(x)min(x,na.rm=T))
>>>> 
>>>> 
>>>> However it only returns empty strings for the entire dataframe except for one date value (which is not the minimum date).
>>>> 
>>>> I´ve also tried
>>>> 
>>>> apply(canc[,vec],1,function(x)max(x,na.rm=T))
>>>> 
>>>> which provides values rowwise, but many of them are not in fact the largest in the row.
>>>> 
>>>> 
>>>> Any advice?
>>>> 
>>>> 
>>>> Regards,
>>>> 
>>>> //M
>>>> 
>>>> ______________________________________________
>>>> 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.
>>>> 
>>> 
>>> 
>>> 
>>> --
>>> Joshua Wiley
>>> Senior in Psychology
>>> University of California, Riverside
>>> http://www.joshuawiley.com/
>> 
>> 
> 
> 
> 
> -- 
> Joshua Wiley
> Senior in Psychology
> University of California, Riverside
> http://www.joshuawiley.com/



More information about the R-help mailing list