Hello,

babyluck wrote
> 
> Dear helpers
> 
> I have two data sets saved as vectors (temperature and velocity). Now I
> need to "take out" a span of temperature and its corresponding velocity in
> the other vector. How can I achieve that? 
> 
> I tried to write a function,which takes a vector entry and then decides
> wether to delete the temperature entry or not and  simultaneously doing so
> with same entry in the velocity vector..
> But somehow it's not working...could somebody please help me? 
> Thanks a lot..
> 
> 
> norm = function(Temp,v){
>       for (i in 1:length(Temp)){
>               
>               if (Temp[i]<=16 || Temp[i] >= 38.5)
>                {Temp[-i];v[-i]}
> 
>               return(Temp,v)
>       }
> }
> 

Your function is not changing 'Temp' nor 'v', just choosing subsets of them.
And you 'return' at the end of the first iteration...
(And you can only return one value)

Try


fun <- function(Temp, v){
        unwanted <- Temp <= 16 | Temp >= 38.5
        Temp <- Temp[!unwanted]
        v <- v[!unwanted]
        list(Temp=Temp, v=v)
}

(tt <- seq(10, 40, by=0.5))
(vv <- 1:length(tt))
fun(tt, vv)

I've changed the name because 'norm' is a  R function name. See ?norm

Hope this helps,

Rui Barradas


--
View this message in context: 
http://r.789695.n4.nabble.com/function-for-filtering-and-deleting-vector-entries-tp4432410p4432772.html
Sent from the R help mailing list archive at Nabble.com.

______________________________________________
R-help@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.

Reply via email to