2014-04-04 2 views
1

R의 정의 된 변수를 sqldf 패키지의 SQL 문으로 전달할 수있는 방법이 있습니까?R 변수를 SQL 문에 전달

나는 아래의 코드를 실행하고 난 '$의 V'

for (i in 1:50){ 
      v <- i+ 450 
      temp <- sqldf("select count(V1) from file_new where V1='$v' ") 
     } 

이 실행되지만, 그것은 잘못된 결과를 반환과 같은 SELECT 문을 SQL 위해 'V'변수를 통과했다. [결과는 1000이어야하지만이 코드는 0을 반환합니다.]

따라서 변수 값을 전달하지 않는다고 생각합니다.

+0

sqldf 홈페이지에서 참조 예 5 : https://code.google.com/p/sqldf/#Example_5._Insert_Variables –

답변

2

v가 정수인 경우 $ v를 작은 따옴표로 묶지 않으므로 문자열 값이됩니다. 작은 따옴표없이 시도하십시오.

temp <- fn$sqldf("select count(V1) from file_new where V1=$v ") 
+0

예, 그것은 정수입니다. 나는 전에 그것을 시도했지만 $ 기호를 인식하지 못하는 오류가있어! 그리고 지금, 나는 그것을 한 번 더 실행하고 나는이 오류를 가지고있다 : sqliteExecStatement (con, statement, bind.data)의 오류 : RS-DBI 드라이버 : (불완전한 데이터 바인딩 : 예상되는 1 개의 매개 변수에 0이 주어진다) – MASUMEH

+0

호출해야한다. 보간을 얻으려면 fn $ sqldf를 사용하십시오. –