我想看看哪些值有特定的入口問題,但我沒有把事情做好。 例如,我需要從列「c」的屏幕值打印,但條件是從「b」給定值說[b == 0]。 最後,我需要爲那些條件爲真的人添加一個新字符串。有條件地在R中顯示值
df<- structure(list(a = c(11.77, 10.9, 10.32, 10.96, 9.906, 10.7,
11.43, 11.41, 10.48512, 11.19), b = c(2, 3, 2, 0, 0, 0, 1, 2,
4, 0), c = c("q", "c", "v", "f", "", "e", "e", "v", "a", "c")), .Names = c("a",
"b", "c"), row.names = c(NA, -10L), class = "data.frame")
我想這沒有成功:
if(df[b]==0){
print(df$c)
}
if((df[b]==0)&(df[c]=="v")){
df[c] <-paste("2")
}
感謝您的幫助。
除了如預期,如果有* NA *值,它不會工作:* NA == 0的真值是* * NA *,所以** ifelse **構造不適合這種情況。或者我錯了某處? – Jealie
我想這取決於NA值應該如何處理特定問題。 – celiomsj
你是對的:)我只是想分享一個我必須合作的代碼,由別人編寫的代碼,其中包含了這個精確的錯誤。我相信,在子集化時使用** which **,或者明確寫入條件(df $ b == 0&!is.na(df $ b))通常是一種很好的做法。 – Jealie