2015-11-07 200 views
1

我正在將數據集加載到R中,並在名爲'收入'的列上執行一些操作。這是我的代碼:使用R替換CSV文件中特定列中的值

CustomerAnalysis <-read.csv(file="C:\\Users\\Hemanth\\Desktop\\509\\Marketing-Customer-Value-Analysis.csv", header=TRUE) 
attach(CustomerAnalysis) 
GenderSummary <- summary(Gender) 
GenderSummary 


Income 
Income[Income==0] <- NA 

Income[Income <= 29999] <- "Low" 
Income[Income > 29999 & Income <= 69999 ] <- "Medium" 
Income[Income > 70000] <- "High" 

我想將「收入」分爲「低」,「中」和「高」。它在「低」和「中」之間工作良好,當涉及到「高」時,除NA值之外,它將「收入」列中的所有值替換爲「高」。

後, '低': after 'medium':

後 '高' 它正在改變這個: after 'low'

'中' 後

After 'High' it is changing to this.

我不知道什麼是錯的。請幫忙。謝謝。

+2

產生數據的樣本,否則就不可能回答 – Bg1850

+1

只是爲了讓你明白怎麼回事錯 「低」> 70000 [1] TRUE – Bg1850

+0

因爲你將它沒有與您的代碼工作'收入'字符類'收入[收入<= 29999] < - 「低」' – akrun

回答

0

我能解決它。我改變了「高」的聲明:

Income[Income >= 70000 & Income != "Low" & Income != "Medium" ] <- "High" 

它的工作。

我不明白爲什麼它沒有提前工作。有任何想法嗎?