Hi ,
I am little confused  about how to covert entire dataset to numeric .
As I read data like..
Xelements =read.csv(file. Choose(),header = T, stringsAsFactors=FALSE)
str(xelements )

> str(xelements)
'data.frame':  731 obs. of  4 variables:
$ Engine.Speed     : chr  "rpm" "ES" "rpm" "1049" ...
$ X..NG.by.Energy  : chr  "" "% NG by Energy" "%" "0%" ...
$ Int.Mfld.Temp    : chr  "" "Int Mfld Temp" "�C" "49" ...
$ Cmd.Advance.Angle: chr  "" "Cmd Advance Angle" "�BTDC" "13.8" ...

I have second column as in 0%, 10%,.... In percentage value ,
Whenever I am going to covert whole dataset its showing NA introduced .second 
column going to become NA.
Converting separately I would be successful .


> xelements$Engine.Speed <- as.numeric(xelements$Engine.Speed)

Warning message:

NAs introduced by coercion

> xelements$X..NG.by.Energy<- 
> as.numeric(sub("%","",xelements$X..NG.by.Energy))/100

Warning message:

NAs introduced by coercion

> xelements$Int.Mfld.Temp<- as.numeric(xelements$Int.Mfld.Temp)

Warning message:

NAs introduced by coercion

> xelements$Cmd.Advance.Angle<- as.numeric(xelements$Cmd.Advance.Angle)

Warning message:

NAs introduced by coercion

But I want to covert whole dataset at a time. I want to write function which 
will help me to solve this problem  .


xelements <- data.frame(sapply(xelements, function(x) 
as.numeric(as.character(x))))
sapply(xelements, class)

but it won't be able to covert percentage value  like 10%, 20%....
please do help me if you know the way. Thank you

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to