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"?
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.
You can extract a column of pandas DataFrame based on another value by using the DataFrame. query() method. The query() is used to query the columns of a DataFrame with a boolean expression. The blow example returns a Courses column where the Fee column value matches with 25000.
This will be done using the add_column() function from the Tibble package. It is worth noting, that both tibble and dplyr are part of the Tidyverse package. Apart from adding columns to a dataframe, you can use dplyr to remove columns, with the select() function, for example.
you can use ifelse like this
dataframe$periodframe <- ifelse(dataframe$year > 1991,"post-1991", "pre-1991")
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With