我有這樣R:轉換矩陣爲YES,NO數據幀
df <- matrix(c(rep(1,3),rep(2,3)),nrow=3,ncol=2)
df:
[,1] [,2]
[1,] 1 2
[2,] 1 2
[3,] 1 2
我想每一個單元格的值轉換爲YES
,如果大於0矩陣,否則NO
我明白,我能做到這一點使用
apply(df, 2, function(x) ifelse(x > 0, "Yes","No"))
但是我矩陣是非常巨大的(百萬* 5000),因此使用應用需要瘋狂大的時間
我也曾嘗試
df <- ifelse(df > 0, "Yes","No")
然而,即使這需要大量的時間
我能實現這個更好的性能?
爲什麼你需要''是「/」否「'。只要做'df> 0'並且得到'TRUE/FALSE'而不是 –
你試過用'replace'嗎? – Bati
@Bati:替換可以用於每個列(向量),我需要爲所有列做這個,它會有幫助嗎? –