[R] Converting a character vector to numeric

arun smartpink111 at yahoo.com
Sat Mar 23 21:05:32 CET 2013


Hi,
Try this:
Vec[grepl("\\(",Vec)]<-paste0("-",gsub("[()]","",Vec[grepl("\\(",Vec)]))
as.numeric(Vec)
# [1]  0.036578077 -1.097386482 -0.812507787  0.577806996 -0.452456601
 #[6] -1.890081260 -1.871609376  0.005521704 -0.476919233 -2.413301888
A.K.




----- Original Message -----
From: Christofer Bogaso <bogaso.christofer at gmail.com>
To: r-help <r-help at r-project.org>
Cc: 
Sent: Saturday, March 23, 2013 3:51 PM
Subject: [R] Converting a character vector to numeric

Hello again,

Let say I have following vector:

Vec <- c("0.0365780769", "(1.09738648244378)", "(0.812507787221523)",
"0.5778069963", "(0.452456601362355)", "-1.8900812605", "-1.8716093762",
"0.0055217041", "-0.4769192333", "-2.4133018880")


Now I want to convert this vector to numeric vector. I am having
problem to doing so because there are some elements with "()" which
should be treated as negative.


Can somebody help me how to achieve that?

Thanks and regards,

______________________________________________
R-help at r-project.org mailing list
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.




More information about the R-help mailing list