2016-09-23 68 views
0

我想編寫一個程序來從我的數據集中刪除異常值。這段代碼顯示了異常的行數和列數,但它不會從我的數據集將其刪除:R異常程序

library(outliers) 
out <- outlier(Practice_data[,2:4], logical=TRUE) 
out <- cbind(FALSE, out) 
Practice_data[which(out[,], TRUE)] 
which(out[,], TRUE) 

那麼我怎麼才能刪除這些離羣值,設爲我的數據,並將它們保存在另一個新的數據文件嗎?

回答

1

如果要刪除包含至少一個異常值的行,請嘗試以下操作(異常值函數將爲您標識每個維度中的異常值,但不會將其移除,您必須明確將其刪除):

library(outliers) 
out <- outlier(Practice_data[,2:4], logical=TRUE) 
indices <- which(rowSums(out) > 0) 
Practice_data <- Practice_data[-indices, ] 
+0

我該如何明確刪除這些行。請給我語法。 – Sandeep

+0

它已經在上面的代碼中,最後一行刪除了標識的異常值。 –

+0

它以True和False顯示數據。我希望我的原始數字格式的數據不是True或False。 – Sandeep