替换数据帧中低于行阈值R的值
我有一个数据帧(强度),我想用0替换行阈值以下的所有值。阈值为相应行最大值的80%。结果应作为新的数据帧进行保护 我试过这个:替换数据帧中低于行阈值R的值,r,R,我有一个数据帧(强度),我想用0替换行阈值以下的所有值。阈值为相应行最大值的80%。结果应作为新的数据帧进行保护 我试过这个: cutoff <- function(x){ x[x < 0.8* max(x)] <- 0 } filter_int <- t(apply(X= intensities, MARGIN = 1, FUN= cutoff)) cutoff经典问题。R函数返回最后一行返回的值。如果指定了某个值,R将不可见地返回指定的值。在您的例子中,这就是
cutoff <- function(x){
x[x < 0.8* max(x)] <- 0
}
filter_int <- t(apply(X= intensities, MARGIN = 1, FUN= cutoff))
cutoff经典问题。R函数返回最后一行返回的值。如果指定了某个值,R将不可见地返回指定的值。在您的例子中,这就是0
添加显式返回语句以解决此问题:
cutoff <- function(x){
x[x < 0.8* max(x)] <- 0
return(x)
}
谢谢,现在可以用了
df <- as.data.frame(
replicate(10, sample(1:100,100))
)
df2 <- df
for(i in seq_len(nrow(df))){
df2[i,] <- cutoff(df[i,])
}