145

Possible Duplicate:
Create an Empty Data.Frame

I need to create an empty data frame in R with specified column names. Any simplest way ?

Community
  • 1
  • 1
Surjya Narayana Padhi
  • 7,571
  • 25
  • 77
  • 126

2 Answers2

174

Just create a data.frame with 0 length variables

eg

nodata <- data.frame(x= numeric(0), y= integer(0), z = character(0))
str(nodata)

## 'data.frame':    0 obs. of  3 variables:
##  $ x: num 
##  $ y: int 
##  $ z: Factor w/ 0 levels: 

or to create a data.frame with 5 columns named a,b,c,d,e

nodata <- as.data.frame(setNames(replicate(5,numeric(0), simplify = F), letters[1:5]))
mnel
  • 110,110
  • 27
  • 254
  • 248
16

Perhaps:

> data.frame(aname=NA, bname=NA)[numeric(0), ]
[1] aname bname
<0 rows> (or 0-length row.names)
IRTFM
  • 251,731
  • 20
  • 347
  • 472