2016-08-02 47 views
-1

根據品牌和型號,許多R教程中使用的數據集有一個沒有標題的首字母列,其中列出了汽車的名稱。tidyr分開,錯誤請提供列名

我試圖分開汽車的品牌和型號。

首先,我創建了名爲「名稱」的第一列無標題列。

> mtcars$names <- rownames(mtcars) 

> rownames(mtcars) <- NULL 

這給了我,這是與結果如下一個特徵向量列:

> mtcars$names 

用下面的輸出:

[1] "Mazda RX4"   "Mazda RX4 Wag"  
[3] "Datsun 710"   "Hornet 4 Drive" 

然後我嘗試這樣做:

separate(mtcars, colname = names, into = c('make', 'model') 

,並得到了以下錯誤:

錯誤:請提供列名

+2

參數是'col',而不是'colname'。 – aosmith

+0

如果問題在第一空間分裂,您可以在'separate'中使用'extra =「merge'',而不是制定正則表達式。請參閱[這裏](http://stackoverflow.com/questions/37126634/r-tidyr-separate-only-first-n-instances/37126832) – aosmith

回答

0
separate(mtcars, col = names, into = c('make', 'model'), sep = '') 

的「威能」沒有化妝的描述,但我認爲這是你問什麼。

+0

這將做到這一點,但要使它完成請解決真正的問題OP試圖傳遞錯誤的參數名稱('colname',它應該是'col'),這是觸發錯誤的原因。 –

+0

[http://stackoverflow.com/questions/8299978/splitting-a-string-on-the-first-space] 在這裏你可以找到一個更好的解決方案 – Tim91

+0

你怎麼能說,勇敢沒有一個做出描述。爲了分開工作(以及extra ='merge'),我必須刪除該行。 –