【发布时间】:2017-11-17 20:57:46
【问题描述】:
我有一个数据集,dt.train2,有 1500 个不同的观察值和 130 个变量。其中之一是languages,它可以是english、french、arabic...
我想创建一个ifelse 字符串,它为english 提供属性1,为french 提供2,为spanish 提供属性3,为其他任何东西提供0。我不知道该怎么做。
dt.train2[, language_string := ifelse(language == "english",
1,
ifelse(language == "french",
2,
ifelse(language == "spanish",3)]
我正在使用它来运行关于销售的线性模型。
【问题讨论】:
-
您只是缺少最后的 else 条件,
language == "spanish",3, 0),您需要, 0。 -
也就是说,这似乎是为线性模型做准备的糟糕方法,除非你真的认为无论有什么语言效应,法语效应是英语效应的两倍,西班牙语效应是三倍乘以英语效果。
-
我会说做一张桌子并做一个更新加入stackoverflow.com/questions/42587214/…
-
你完全正确!谢谢!
标签: r if-statement data.table conditional