使用字典映射R数据帧中的值

时间:2017-11-08 15:23:28

标签: r dataframe

我有一个看起来像这样的数据框

 A      B      C
one    NULL   one
NULL   one    NULL
NULL   one    one

如何效率将Null替换为0,将“one”替换为1? 请注意,我不是要求如何用0替换NULL,我问如何用0替换NULL和“1”以1有效地替换

2 个答案:

答案 0 :(得分:1)

您可以使用replace()中的dplyr

library(dplyr)


df %>% # replace df with your dataframe
  replace(. == "NULL", 0) %>%
  replace(. == "one", 1)

  A B C
1 1 0 1
2 0 1 0
3 0 1 1

答案 1 :(得分:0)

来自mapvalues的{​​{1}} plyrsupply的帮助下完成了工作

df_new=  tbl_df(sapply(df, function(x)  mapvalues(x, c("NULL", "1"), c(0,1))  ))