[R] StrSplit
jim holtman
jholtman at gmail.com
Sat Oct 9 18:30:59 CEST 2010
Is this what you are after:
> x <- c("Scheme Code;Scheme Name;Net Asset Value;Repurchase Price;Sale Price;Date"
+ , ""
+ ,"Open Ended Schemes ( Liquid )"
+ , ""
+ , ""
+ , "AIG Global Investment Group Mutual Fund"
+ , "106506;AIG India Liquid Fund-Institutional Plan-Daily Dividend
Option;1001.0000;1001.0000;1001.0000;02-Oct-2010"
+ , "106511;AIG India Liquid Fund-Institutional Plan-Growth
Option;1210.4612;1210.4612;1210.4612;02-Oct-2010"
+ , "106507;AIG India Liquid Fund-Institutional Plan-Weekly Dividend
Option;1001.8765;1001.8765;1001.8765;02-Oct-2010"
+ , "106503;AIG India Liquid Fund-Retail Plan-DailyDividend
Option;1001.0000;1001.0000;1001.0000;02-Oct-2010")
>
> myData <- read.table(textConnection(x[7:10]), sep=';')
> closeAllConnections()
> str(myData)
'data.frame': 4 obs. of 6 variables:
$ V1: int 106506 106511 106507 106503
$ V2: Factor w/ 4 levels "AIG India Liquid Fund-Institutional
Plan-Daily Dividend Option",..: 1 2 3 4
$ V3: num 1001 1210 1002 1001
$ V4: num 1001 1210 1002 1001
$ V5: num 1001 1210 1002 1001
$ V6: Factor w/ 1 level "02-Oct-2010": 1 1 1 1
> myData
V1
V2 V3 V4 V5 V6
1 106506 AIG India Liquid Fund-Institutional Plan-Daily Dividend
Option 1001.000 1001.000 1001.000 02-Oct-2010
2 106511 AIG India Liquid Fund-Institutional Plan-Growth
Option 1210.461 1210.461 1210.461 02-Oct-2010
3 106507 AIG India Liquid Fund-Institutional Plan-Weekly Dividend
Option 1001.876 1001.876 1001.876 02-Oct-2010
4 106503 AIG India Liquid Fund-Retail Plan-DailyDividend
Option 1001.000 1001.000 1001.000 02-Oct-2010
>
>
On Sat, Oct 9, 2010 at 12:18 PM, Santosh Srinivas
<santosh.srinivas at gmail.com> wrote:
> Newbie question ...
>
> I am looking something equivalent to read.delim but which accepts a text line as parameter instead of a file input.
>
> Below is my problem, I'm unable to get the exact output which is a simple data frame of the data where the delimiter exists ... coming quite close though
>
> I have a data frame with 10 lines called MF_Data
>> MF_Data [1:10]
> [1] "Scheme Code;Scheme Name;Net Asset Value;Repurchase Price;Sale Price;Date"
> [2] ""
> [3] "Open Ended Schemes ( Liquid )"
> [4] ""
> [5] ""
> [6] "AIG Global Investment Group Mutual Fund"
> [7] "106506;AIG India Liquid Fund-Institutional Plan-Daily Dividend Option;1001.0000;1001.0000;1001.0000;02-Oct-2010"
> [8] "106511;AIG India Liquid Fund-Institutional Plan-Growth Option;1210.4612;1210.4612;1210.4612;02-Oct-2010"
> [9] "106507;AIG India Liquid Fund-Institutional Plan-Weekly Dividend Option;1001.8765;1001.8765;1001.8765;02-Oct-2010"
> [10] "106503;AIG India Liquid Fund-Retail Plan-DailyDividend Option;1001.0000;1001.0000;1001.0000;02-Oct-2010"
>
>
> Now for the lines below .. they are delimted by ; ... I am using
>
> tempTxt <- MF_Data[7]
> MF_Data_F <- unlist(strsplit(tempTxt,";", fixed = TRUE))
> tempTxt <- MF_Data[8]
> MF_Data_F1 <- unlist(strsplit(tempTxt,";", fixed = TRUE))
> MF_Data_F <- rbind(MF_Data_F,MF_Data_F1)
>
> But MF_Data_F is not a simple 2X6 data frame which is what I want
>
> ______________________________________________
> 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.
>
--
Jim Holtman
Cincinnati, OH
+1 513 646 9390
What is the problem that you are trying to solve?
More information about the R-help
mailing list