[R] if else statement for rain data to define zero for dry and one to wet
roslinazairimah zakaria
roslinaump at gmail.com
Fri Jun 5 10:49:08 CEST 2015
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]]
More information about the R-help
mailing list