2014-09-03 342 views
0

我有一個數據集,我想用數字數據替換文本數據。如何替換R中一列數據集中的值?

我攝入的數據是這樣的:

> credit_arff <- read.arff("/Users/birdy/credit-g.arff") 

> factor(table(credit_arff$checking_status)) 
     <0  >=200 0<=X<200 no checking 
     274   63   269   394 

我想與-1

這裏是更換所有<0值的數據看起來像在View

enter image description here

替換後的號碼<0 s應保持相同(即274

+0

這已經是一個因素。你想通過將值更改爲「-1」來完成什麼?只是重新命名級別的工作? 'level(credit_arff $ checking_status)[1] < - 「 - 1」'假設'class(credit_arff $ checking_status)'已經是一個「因素」。由於它只是一個標籤,因此「-1」在任何有意義的方面與「<0」沒有任何區別。 – MrFlick 2014-09-03 17:56:38

+0

我的目標是能夠繪製直方圖。當數據是文本的時候,我無法做到這一點。最終,我想要替換所有文本數據。即''0'會變成'-1' ...'不檢查'會變成'0'等 – birdy 2014-09-03 18:00:05

+0

'hist(credit_arff $ checking_status)'不起作用,但是'hist(credit_arff $ duration)'做因爲'duration'是全部數字。這些數據已經以「數字」形式提供,但沒有意義,因爲沒有數字代表的映射:https://archive.ics.uci.edu/ml/machine-learning-databases/statlog/german/german .data-numeric – birdy 2014-09-03 18:01:28

回答

0

您可以從「< 0」修改原始數據爲「-1」之前,你與它製成表格:

credit_arff$checking_status[ credit_arff$checking_status=="<0" ] <- "-1" 

或者你可以先製成表,然後用獲得的標題

rownames(table(credit_arff$checking_status) 

...並在那裏更改它,如果你想。限制因素是數據矢量或rownames矢量不包含數字和字符數據的混合。即使您從上面的代碼中省略「-1」左右的雙引號,數據也會變爲「-1」。這是否可以接受取決於你接下來要做的事情。或者你是否將所有其他內容更改爲數字?

+0

這樣做會改變由factor(table(credit_arff $ checking_status))檢索到的<0的值。 – birdy 2014-09-03 18:03:45

+0

你是說它改變了「<0」的* count *?我看不出爲什麼。也許想出一個小例子,我們可以複製粘貼來複制問題。 – Joe 2014-09-03 21:27:02