簡體   English   中英

如何將具有數字值的char數據類型的列轉換為數字數據類型

[英]How to convert columns having char datatype with numeric values to numeric datatype

    $Budget(chr)"3,000.00", "2,000.00", "2,000.00"...  
    $Impressions(int) 0, 0, 0, 0...  
    $Interactions(int) 0, 0, 0...  
    $Interaction.Rate(chr) "0.00%", "0.00%", "0.00%"...  
    $Avg..Cost (dbl) 0, 0, 0, 0, 0, 0, 0...  
    $Cost(chr) "0", "0", "0", "0"...  
    $Clicks(int) 0, 0, 0, 0...  
    $CTR(chr) "0.00%", "0.00%", "0.00%"...  

我有一些列,所有的列都有數值,但是當我在R中導入它們時,它們似乎是字符數據類型,我想將這些字符轉換為整數,並從具有它們的列中刪除%符號。

    mData=mData %>%
    mutate(Budget=as.numeric(Budget),  
    Interaction.Rate=as.numeric(gsub("%","",Interaction.Rate)),  
    Cost=as.numeric(Cost),  
    CTR=as.numeric(gsub("%","",CTR)))  

我嘗試這樣做,但沒有結果,而是給我錯誤:

警告消息:在eval(substitute(expr),envir,enclos)中:強制引入的NA

誰能幫我這個忙

您可以使用transform將它們轉換回numeric

transform(mData, Budget= as.numeric(Budget), Interaction.Rate = as.numeric(nteraction.Rate), ...)

要刪除,並且%使用gsub (得到了這個想法在這里

 mData$Budget<- as.numeric(gsub("," ,"" ,mData$Budget))

暫無
暫無

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

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