Я использую пакет sqldf в R и пытаюсь найти количество значений 1 и 2 в одном столбце. Мои данные выглядят так:
> head(d)
bid status
1 201-300 1
2 201-300 1
3 901-1000 2
4 601-700 1
5 801-900 1
6 801-900 2
Я пытаюсь найти счетчик статуса, когда он равен 1, и счетчик статуса, когда он равен 2, а затем поместить их в два отдельных столбца.
Итак, используя пакет sqldf в R, я запустил следующий код:
sqldf("SELECT bid, SUM(IF(status='2', 1,0)) AS 'won', SUM(IF(status='1', 1,0)) AS 'lost', COUNT(bid) FROM d GROUP BY bid")
Однако я получаю следующее сообщение об ошибке.
Error in sqliteExecStatement(con, statement, bind.data) :
RS-DBI driver: (error in statement: no such function: IF)
Разве это невозможно с пакетом sqldf?
Есть ли способ получить желаемый результат с помощью другой команды sql в R? (или с помощью plyr, rehape или любого другого инструмента в R)