以编程方式创建数据框并向其添加行

Hom*_*lli 17 r

我最近开始使用R并且仍然习惯于它的数据类型等.我从数据库中获取数据,对数据执行计算,然后将一些结果存储回数据库.

计算出的数据将存储在数据库中的特定表中.我想创建一个数据框,其列与db表的列匹配(即相同的名称和数据类型[near as]).为了做到这一点,我需要能够做到以下几点:

  1. 以编程方式创建具有指定"列"的数据框我知道我可以使用data.frame()创建它,但不清楚如何创建仅包含列标题但尚未创建数据(行)的数据框.

  2. 以编程方式将行添加到上面步骤1中创建的空数据框

Thi*_*rry 26

empty <- data.frame(a = numeric(), b = factor(), c = character())
filled <- rbind(empty, data.frame(a = 1, b = factor("abc"), c = "def"))
Run Code Online (Sandbox Code Playgroud)

这是在行动:

> empty <- data.frame(a = numeric(), b = factor(), c = character())
> empty
[1] a b c
<0 rows> (or 0-length row.names)
> empty$a
numeric(0)
> empty$b
factor(0)
Levels: 
> empty$c
character(0)
> filled <- rbind(empty, data.frame(a = 1, b = factor("abc"), c = "def"))
> summary(filled)
       a       b          c            
 Min.   :1   abc:1   Length:1          
 1st Qu.:1           Class :character  
 Median :1           Mode  :character  
 Mean   :1                             
 3rd Qu.:1                             
 Max.   :1   
Run Code Online (Sandbox Code Playgroud)

  • 你可以做到这一点.但无论如何:你处于R inferno的第二个圈子:http://www.burns-stat.com/pages/Tutor/R_inferno.pdf (8认同)