145

可能重复:
创建一个空 Data.Frame

我需要在 R 中创建一个具有指定列名的空数据框。有什么最简单的方法吗?

4

2 回答 2

174

只需创建一个data.frame长度为 0 的变量

例如

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: 

或创建一个包含 5 列名为 a、b、c、d、e 的 data.frame

nodata <- as.data.frame(setNames(replicate(5,numeric(0), simplify = F), letters[1:5]))
于 2012-09-27T04:14:40.703 回答
16

也许:

> data.frame(aname=NA, bname=NA)[numeric(0), ]
[1] aname bname
<0 rows> (or 0-length row.names)
于 2012-09-27T04:13:18.593 回答