我在R中有一个数据帧(称为"df"(,并且我创建了一个新列(称为"col"(,该列当前填充了NA。df 中还有另一列称为 risk,我已经对数据帧进行了排序,因此风险最高的行位于顶部。
我希望前 25% 的列(因此风险最高 25%(包含单词"x",而其他 75% 的列中包含"y"。我想我需要一个 for 循环来做到这一点,但有人可以取悦我吗?
你可以用ifelse
来做到这一点
ifelse(df$risk > quantile(df$risk, 0.75), "x", "y")
如果你想把它保存到你的数据帧中使用
df$col = ifelse(df$risk > quantile(df$risk, 0.75), "x", "y")