[R] if else statement for rain data to define zero for dry and one to wet

John Kane jrkrideau at inbox.com
Fri Jun 5 15:41:45 CEST 2015


Please do not post in HTML. It made your posting unreadable.  R-help is a plain text list and when it removes all the HTML tags often the result is gibberish

Have a look at http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example and http://adv-r.had.co.nz/Reproducibility.html for some suggestions on how to post to R-help.


John Kane
Kingston ON Canada


> -----Original Message-----
> From: roslinaump at gmail.com
> Sent: Fri, 5 Jun 2015 16:49:08 +0800
> To: r-help at r-project.org
> Subject: [R] if else statement for rain data to define zero for dry and
> one to wet
> 
> Dear r-users,
> 
> I have a set of rain data:
> 
> X1950 X1951 X1952 X1953 X1954 X1955 X1956 X1957 X1958 X1959 X1960 X1961
> X1962
> 
> 1   0.0   0.0  14.3   0.0  13.5  13.2   4.0     0   3.3     0     0   0.0
> 
> 
> 2   0.0   0.0  21.9   0.0  10.9   6.6   2.1     0   0.0     0     0   0.0
> 
> 
> 3  25.3   6.7  18.6   0.8   2.3   0.0   8.0     0   0.0     0     0  11.0
> 
> 
> 4  12.7   3.4  37.2   0.9   8.4   0.0   5.8     0   0.0     0     0   5.5
> 
> 
> 5   0.0   0.0  58.3   3.6  21.1   4.2   3.0     0   0.0     0     0  15.9
> 
> 
> I would like to go through each column and define each cell with value
> greater than 0.1 mm will be 1 and else zero. Hence I would like to attach
> the rain data and the category side by side:
> 
> 
> 1950   state
> 
> 1 0.0    0
> 
> 2 0.0    0
> 
> 3 25.3   1
> 
> 4 12.7   1
> 
> 5 0.0    0
> 
> 
> ...
> 
> 
> This is my code:
> 
> 
> wet_dry  <- function(dt)
> 
> { cl   <- length(dt)
> 
>   tresh  <- 0.1
> 
> 
>   for (i in 1:cl)
> 
>   {  xi <- dt[,i]
> 
>      if (xi < tresh ) 0 else 1
> 
>   }
> 
> dd <- cbind(dt,xi)
> 
> dd
> 
> }
> 
> 
> wet_dry(dt)
> 
> 
> Results:
> 
>> wet_dry(dt)
> 
>    X1950 X1951 X1952 X1953 X1954 X1955 X1956 X1957 X1958 X1959 X1960
> X1961
> X1962 X1963 X1964 X1965 X1966 X1967 X1968 X1969 X1970 X1971 X1972 X1973
> X1974 X1975 X1976 X1977
> 
> 1    0.0   0.0  14.3   0.0  13.5  13.2   4.0   0.0   3.3   0.0   0.0
> 0.0
>   4.2   0.0   2.2   0.0   4.4   5.1     0   7.2   0.0   0.0   0.0   5.1
> 0   0.0     0   0.3
> 
> 2    0.0   0.0  21.9   0.0  10.9   6.6   2.1   0.0   0.0   0.0   0.0
> 0.0
>   8.4   0.0   4.0   0.0   4.9   0.7     0   0.0   0.0   0.0   0.0   5.4
> 0   3.3     0   0.3
> 
> 3   25.3   6.7  18.6   0.8   2.3   0.0   8.0   0.0   0.0   0.0   0.0
> 11.0
>   4.2   0.0   2.0   0.0  14.2  17.1     0   0.0   0.0   0.0   0.0   2.1
> 0   1.7     0   4.4
> 
> 4   12.7   3.4  37.2   0.9   8.4   0.0   5.8   0.0   0.0   0.0   0.0
> 5.5
>   0.0   0.0   5.4   0.0   6.4  14.9     0  10.1   2.9 143.4   0.0   6.1
> 0   0.0     0  33.5
> 
> 
> It does not work and give me the original data.  Why is that?
> 
> 
> Thank you so much for your help.
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> 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.

____________________________________________________________
Can't remember your password? Do you need a strong and secure password?
Use Password manager! It stores your passwords & protects your account.



More information about the R-help mailing list