r sqliteExecStatement中的错误(con,statement,bind.data):RS-DBI驱动程序:(语句中的错误:没有这样的列:csnu)

时间:2013-07-03 14:35:59

标签: r sqldf

我是R的新人,我已经搜索了类似的问题并且找不到答案。如果交叉发帖请参考正确的链接。

我有一个2个csv文件。 1-Bm,86行2列。

BM <- read.csv('Z:/R_CGV/alB.csv', header = FALSE)

第二 - BG有80行和14列。

BG <- read.csv('Z:/R_CGV/BG111.csv', header = FALSE) 

我需要通过BM文件和其中(BM的第1列内容等于BG文件中的第12列)BM [,1] = BG [i,1]想要提取第2列内容。

library(sqldf)
 BM <- read.csv('Z:/R_CGV/alB.csv', header = FALSE)    
 BG <- read.csv('Z:/R_CGV/BG111.csv', header = FALSE) 

len_BM <- length(BM)
 csNu <- BG[,12]
for (i in len_BM)


BnNam <- BM[i:len_BM,1]
{

    RetC_BN <- read.csv.sql("alB.csv", sql="select * from BM where csNu=BnNam")

}    

它通过我的错误:

Error in sqliteExecStatement(con, statement, bind.data) : 
  RS-DBI driver: (error in statement: no such column: csNu)

我检查了关键字并尝试更改名称,但没有任何帮助。我在这里缺少什么?

BM(../al.c.csv)文件的示例:

10  3    
23  4    
37  3    
# more lines
86  5   

BG(... / BG111.csv')文件的示例:

10  41.16   1   0.36   47   0.94    49  26.83   26.83   1 0.3249 0.63   49  26.83
100 40.62    0  0.11    55  0.95    107 33.62   42.25   0   0.117   109 0.64    107 33.62
# more lines
101 29.75   0   0.082   111 0.91    107 12.62   29.75   0   0.08    111 0.88    107 12.62

非常感谢, 密耳'

1 个答案:

答案 0 :(得分:1)

我认为你想要的是

BM[,2][BM[,1]==BG[,12]]