[R] String manipulation
Spencer Graves
spencer.graves at pdf.com
Fri Jun 25 11:33:23 CEST 2004
Does the following do what you want (or supply the missing gaps):
> Args <- paste(c("female", "male"), "= names", 1:2, sep="")
> Args
[1] "female= names1" "male= names2"
> listText <- paste("names.list<-list(",
+ paste(Args, collapse=","), ")")
> listText
[1] "names.list<-list( female= names1,male= names2 )"
> names1 <- c("Sue", "Betty")
> names2 <- c("Bill", "Sam")
> eval(parse(text=listText))
> names.list
$female
[1] "Sue" "Betty"
$male
[1] "Bill" "Sam"
hope this helps. spencer graves
p.s. "str" is the name of a function to "Compactly Display the
Structure of an Arbitrary R Object". I prefer to avoid masking
functions with local objects, even though R can tell which object is
desired in many but not all contexts. To avoid this, I often test a
name before I use it. When I don't get, "Object ... not found", I try
something different, e.g., using capital letters somewhere or adding a
"." at the end. This also has the advantage of introducing me or
reminding me of functions I may not have known.
Robin Gruna wrote:
>Hi,
>let's see, if someone can help my with this one:
>I have the string as follows:
>
>
>>str<-("one","two","three")
>>
>>
>
>Now I want to concatenate the items to one string, seperateted by space or
>something else,
>
>
>>str
>>"one, two, three"
>>
>>
>If possible without a loop.
>
>My actual goal ist to create string like
>
>
>>str.names
>>"female = names1, male = names2"
>>
>>
>and pass it as argument to list(), intending to create a list
>
>
>>names.list<-list( female = names1, male = names2)
>>
>>
>
>Thanks a lot,
>Robin
>
>______________________________________________
>R-help at stat.math.ethz.ch mailing list
>https://www.stat.math.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>
>
More information about the R-help
mailing list