Hello,
Try the following.
tmp <- strsplit(as.character(my_dat$instrument), "_")
tmp <- t(as.data.frame(tmp))
tmp <- data.frame(instrument = tmp[,1], sr_no = as.integer(tmp[, 2]),
my_dat$mtm_value)
result <- tmp[order(tmp[, 1], tmp[, 2]), ]
rm(tmp)
rownames(result) <- NULL
result
Hope this helps,
Rui Barradas
Em 03-06-2015 10:09, Amelia Marsh escreveu:
Dear R forum
I have a data (actually its a big data and I am only giving part of my
interest) as
my_dat = data.frame(instrument = c("EQ_0", "EQ_1", "EQ_10", "EQ_100", "EQ_2", "EQ_20", "IRS_0", "IRS_1",
"IRS_10", "IRS_100", "IRS_2", "IRS_20"), mtm_value = c(23, 63, 8, 44, 68, 11, 83, 56, 73, 92, 14, 7))
my_dat
instrument mtm_value
1 EQ_0 23
2 EQ_1 63
3 EQ_10 8
4 EQ_100 44
5 EQ_2 68
6 EQ_20 11
7 IRS_0 83
8 IRS_1 56
9 IRS_10 73
10 IRS_100 92
11 IRS_2 14
12 IRS_20 7
I need to split the first column and arrange the output in the ascending order
as shown below :
instrument sr_no mtm_value
1 EQ 0 23
2 EQ 1 63
3 EQ 2 68
4 EQ 10 8
5 EQ 20 11
6 EQ 100 44
7 IRS 0 83
8 IRS 1 56
9 IRS 2 14
10 IRS 10 73
11 IRS 20 7
12 IRS 100 92
I tried to use gsub, strsplit but doesn't give me the required output.
Kindly guide
Regards
Amelia
______________________________________________
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.
______________________________________________
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.