user1052080
user1052080

Reputation: 470

R: convert variable to csv string

I would like to know how to convert a variable in R to csv string.

> x = c(1:10)
> a = write.csv(x)
"","x"
"1",1
"2",2
"3",3
"4",4
"5",5
"6",6
"7",7
"8",8
"9",9
"10",10
> a
NULL
> 

I want to have the CSV string in variable 'a'.

Thanks

Upvotes: 6

Views: 4648

Answers (2)

user3603486
user3603486

Reputation:

Here's an alternative, even easier:

foo2 <- capture.output(write.csv(matrix(1:6,nrow=2), stdout(), row.names=F)) 
foo2
## "\"V1\",\"V2\",\"V3\"" "1,3,5"                "2,4,6" 

Probably what you want is:

foo2[-1,]    
## "\"V1\",\"V2\",\"V3\"" "1,3,5"                "2,4,6" 

Upvotes: 3

user1052080
user1052080

Reputation: 470

Things can be so simple ....

 > zz <- textConnection("foo1", "w") 
 > textConnectionValue(zz) 
 character(0) 
 > write.csv(x, zz) 
 > textConnectionValue(zz) 
 [1] "\"\",\"x\"" "\"1\",1" "\"2\",2" "\"3\",3" "\"4\",4" 
 [6] "\"5\",5" "\"6\",6" "\"7\",7" "\"8\",8" "\"9\",9" 
 [11] "\"10\",10"
 > 

Upvotes: 6

Related Questions