2014-10-05 252 views
-4

我有一個數據幀,它有2列 - A & B.我想用這樣一種方式替換列B的值,即當VALUE>=5替換爲1時,否則換成0
注 -有2個條件進行檢查。R - 有條件地替換數據幀中的列值

X=read.csv("Y:/impdat.csv") 

A B 
3 16 
12 3 
1 2 
12 9 
4 4 
5 6 
21 1 
4 14 
3 10 
12 1 

所以更換後,該數據應該是

A B 
3 1 
12 0 
1 0 
12 1 
4 0 
5 1 
21 0 
4 1 
3 1 
12 0 

聽起來很簡單。但我無法執行它。
我試圖

ifelse(X$B>=5,1,0) 

僅打印新的價值觀,但原始數據保持不變。

+3

是很簡單的。提示:'ifelse'。 – agstudy 2014-10-05 16:52:12

+0

@agstudy我試過了,但只打印值,並不會改變數據框X – 2014-10-05 17:12:43

回答

2
X$B <- as.integer(X$B >= 5) 

會做的伎倆。

+0

這隻會條件 – 2014-10-05 17:46:37

+1

@BalajiSuresh什麼是第二個條件1滿足?請說明預期的結果。 – 2014-10-05 17:47:44

+0

應該由0 – 2014-10-05 17:52:49

0

明白了。 只需分配對象。

X$B=ifelse(X$B>=5,1,0) 
相關問題