簡體   English   中英

如何將數字列轉換為R中的因子

[英]how to convert numeric column to factor in R

我正在嘗試使用softImpute命令(來自softImpute包)來填充缺失值,並且我試圖在使用softImpute之前將大數據幀中的分類變量轉換為因子類型。

我使用了as.factor命令和factor命令,但它們都產生了以下結果

train[a]=factor(train[a])

Error in sort.list(y) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?

a在這里是像一個矢量: c(1:92)

我也試過as.character但是softImpute命令不會將變量識別為字符並將它們視為數字,從而產生分類/指示變量的十進制值。

嘗試:

train[[a]]=factor(train[[a]])

當然,這確實假設,a是具有1:length(train)范圍內的數值的對象,或者是names(train)向量中的值之一。 如果使用“[”引用數據框,則會得到一個列表,其中一個元素恰好是您希望“分解”的向量,但它實際上不是一個向量,而是一個單元素列表。 “[[”函數只為您提供向量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM