如何将用本地语言表示的字符串布尔值转换为布尔值

How to convert string booleans expressed in local language into boolean

我有一个用本地语言收集的大型数据集,其中每个布尔列使用单词“PRAWDA”表示真,“FAŁSZ”表示假。

到目前为止,数据框将这些值存储为一列,其中包含两个级别的因子:“FAŁSZ”和“PRAWDA”。 我的目标是让列充满布尔值,而不是字符串值。

如何将所有用波兰语表示的布尔值转换成英语?

如果它只是一个布尔值,请使用 == 检查 'PRAWDA',对于匹配 'PRAWDA' 的情况,returns 为 TRUE,否则为 FALSE。由于只有两个值,这应该足够了

df1$col2 <- df1$col1 == 'PRAWDA'

如果有多个列,使用循环

df1[] <- lapply(df1, function(x) if(all(x %in% c('PRAWDA', 'FALSZ'), na.rm = TRUE)) x == 'PRAWDA' else x)