如何根据另一列的条件语句将因子列添加到数据框?

时间:2021-04-25 19:37:19

I have a dataframe for which I need to add a factor column based on a conditional statement. Here is the data.

我有一个数据帧,我需要根据条件语句添加一个因子列。这是数据。

Code:

码:

    morstats.agri.f <- moroccostats[c("year","agVA_g","agVA_ppp_g")]
    morstats.agri.f

Question:

题:

So, i want to add a column "periodframe" to the dataframe that has two entries: "pre-1991" and "post-1991" based on the condition for the column "year"?

那么,我想在数据框中添加一个“periodframe”列,它有两个条目:“1991之前”和“1991之后”,基于“年”栏的条件?

the dataframe looks like this:

数据框如下所示:

    year agVA_g   agVA_ppp_g
 1  1960   0.00  0.000000000
 2  1961   0.00  0.000000000
 3  1962   0.00  0.000000000
 4  1963   0.00  0.000000000
 5  1964   0.00  0.000000000
 6  1965  -0.13 -0.160505952
 7  1966   0.09  0.065780672
 8  1967   0.10  0.075941092
 9  1968  -0.04 -0.064963044
 10 1969   0.11  0.084530984
 11 1970   0.19  0.161963328
 12 1971   0.12  0.097397145
 13 1972   0.19  0.160263118
 14 1973   0.20  0.172040051
 15 1974   0.01 -0.012005158
 16 1975   0.14  0.111609284
 17 1976  -0.02 -0.044823054
 18 1977   0.32  0.299092259
 19 1978   0.13  0.104535675
 20 1979   0.20  0.171374920

etc.

等等

1 个解决方案

#1


42  

you can use ifelse like this

你可以像这样使用ifelse

dataframe$periodframe <- ifelse(dataframe$year > 1991,"post-1991", "pre-1991")

#1


42  

you can use ifelse like this

你可以像这样使用ifelse

dataframe$periodframe <- ifelse(dataframe$year > 1991,"post-1991", "pre-1991")