在R中,可以使用apply函数结合条件语句来删除值大于90%的列并将其替换为0。以下是具体的步骤:
data <- apply(data, 2, function(x) ifelse(sum(x > quantile(x, 0.9)) > 0, 0, x))
在上述代码中,quantile函数用于计算每列数据的90%分位数。然后,使用条件语句ifelse判断每个元素是否大于90%分位数,如果是,则将其替换为0,否则保持原值不变。
data <- as.data.frame(data)
这样,你就成功地在R中将值大于90%的列删除为0了。
请注意,以上代码仅适用于数值型数据。如果你的数据包含其他类型的变量(如字符型或逻辑型),需要进行相应的数据类型转换或修改条件语句。
领取专属 10元无门槛券
手把手带您无忧上云