2013-07-19 28 views
1

我有一個數據幀,其中的一列是字符串:使用追加被自動轉換字符串整數

> head(a$type) 
[1] Sell Sell Sell Buy Buy Buy 
Levels: Buy Sell 

當我append給它,它的一切轉換爲int:

> head(append(a$type, "Buy")) 
[1] "2" "2" "2" "1" "1" "1" 

爲什麼會發生這種情況,我該如何預防?

+4

你實際上有一個因素,而不是一個字符串。 – Peyton

+0

......即便如此,沒有任何東西(技術上)被轉換爲int。因素是_already_整數代碼,並且返回的是將這些整數轉換爲字符。 – joran

+0

Duplicate:http://stackoverflow.com/q/3443576/946850 – krlmlr

回答

2

您的a$type變量實際上是一個因素。要將因子轉換爲字符,請使用

a$type = as.character(a$type) 

然後您的append命令應該可以工作。