Presumably, sqldf does not know about Date object so passes an integer that 
gets interpreted as who knows what...

This seems to work:

> df <- data.frame(date=as.character(Sys.Date()+seq(0,180,,10)))
> cbind(df, sqldf("select strftime( '%m', date) from df"))
         date strftime( '%m', date)
1  2016-09-16                    09
2  2016-10-06                    10
3  2016-10-26                    10
4  2016-11-15                    11
5  2016-12-05                    12
6  2016-12-25                    12
7  2017-01-14                    01
8  2017-02-03                    02
9  2017-02-23                    02
10 2017-03-15                    03

-pd



On 16 Sep 2016, at 13:48 , PIKAL Petr <petr.pi...@precheza.cz> wrote:

> Hi
> 
> Most probably there is some syntactic suger how to correctly formulate sql 
> query.
> 
>> sqldf('select Date, strftime("Date", "%m") from log')
>        Date strftime("Date", "%m")
> 1 2013-05-25                   <NA>
> 2 2013-05-28                   <NA>
> 3 2013-05-31                   <NA>
> 4 2013-06-01                   <NA>
> 5 2013-06-02                   <NA>
> 6 2013-06-05                   <NA>
> 7 2013-06-07                   <NA>
>> sqldf('select Date, format("Date", "%m") from log')
> Error in sqliteSendQuery(con, statement, bind.data) :
>  error in statement: no such function: format
>> 
> 
> format(sqldf("select Date from log"), "%m")
> 
> This one however works.
> 
> Cheers
> Petr
> 
> From: Manohar Reddy [mailto:manu.redd...@gmail.com]
> Sent: Friday, September 16, 2016 11:55 AM
> To: PIKAL Petr <petr.pi...@precheza.cz>
> Cc: R-help <r-help@r-project.org>
> Subject: Re: [R] stfrtime function not returning proper results through sqldf 
> package in R
> 
> 
> Hi Petr,
> 
> Thanks, For me also it’s working fine when I directly used that function  but 
> when I call strftime function through sqldf package it’s returning NA values 
> (PFA) ,but my requirement is I need to do that only sqldf as I’m writing some 
> “T sql ” queries against on the dataset.
> 
> Manu.
> 
> On Fri, Sep 16, 2016 at 12:56 PM, PIKAL Petr 
> <petr.pi...@precheza.cz<mailto:petr.pi...@precheza.cz>> wrote:
> Hi
> 
> Hm
>> format(log$Date, "%m")
> [1] "05" "05" "05" "06" "06" "06" "06"
>> strftime(log$Date, "%m")
> [1] "05" "05" "05" "06" "06" "06" "06"
>> 
> 
> works for me.
> 
> Just a blind guess, is an object date somwhere in your environment?
> 
> Cheers
> Petr
> 
> 
>> -----Original Message-----
>> From: R-help 
>> [mailto:r-help-boun...@r-project.org<mailto:r-help-boun...@r-project.org>] 
>> On Behalf Of Manohar
>> Reddy
>> Sent: Friday, September 16, 2016 6:36 AM
>> To: R-help <r-help@r-project.org<mailto:r-help@r-project.org>>
>> Subject: [R] stfrtime function not returning proper results through sqldf
>> package in R
>> 
>> Hi ,
>> 
>> 
>> 
>>  I have data something looks like below (or PFA), but when I’m extracting
>> month  using *strftime*  function through *sqldf* library ,it’s returning
>> below results but it’s not returning exact results ,it supposed to return
>> 05,05,05,06,06,06.Can anyone please guide me how to do that with
>> *strftime* function.
>> 
>> 
>> 
>> Thanks in advance.
>> 
>> 
>> 
>> Quiries :
>> 
>> 
>> library(scales)
>> 
>> # load data:
>> log <- data.frame(Date =
>> c("2013/05/25","2013/05/28","2013/05/31","2013/06/01","2013/06/02","2013
>> /06/05","2013/06/07"),
>>  Quantity = c(9,1,15,4,5,17,18))
>> 
>> 
>> # convert date variable from factor to date format:
>> log$Date <- as.Date(log$Date,
>>  "%Y/%m/%d") # tabulate all the options here
>> str(log)
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> Manu.
> 
> ________________________________
> Tento e-mail a jakékoliv k němu připojené dokumenty jsou důvěrné a jsou 
> určeny pouze jeho adresátům.
> Jestliže jste obdržel(a) tento e-mail omylem, informujte laskavě neprodleně 
> jeho odesílatele. Obsah tohoto emailu i s přílohami a jeho kopie vymažte ze 
> svého systému.
> Nejste-li zamýšleným adresátem tohoto emailu, nejste oprávněni tento email 
> jakkoliv užívat, rozšiřovat, kopírovat či zveřejňovat.
> Odesílatel e-mailu neodpovídá za eventuální škodu způsobenou modifikacemi či 
> zpožděním přenosu e-mailu.
> 
> V případě, že je tento e-mail součástí obchodního jednání:
> - vyhrazuje si odesílatel právo ukončit kdykoliv jednání o uzavření smlouvy, 
> a to z jakéhokoliv důvodu i bez uvedení důvodu.
> - a obsahuje-li nabídku, je adresát oprávněn nabídku bezodkladně přijmout; 
> Odesílatel tohoto e-mailu (nabídky) vylučuje přijetí nabídky ze strany 
> příjemce s dodatkem či odchylkou.
> - trvá odesílatel na tom, že příslušná smlouva je uzavřena teprve výslovným 
> dosažením shody na všech jejích náležitostech.
> - odesílatel tohoto emailu informuje, že není oprávněn uzavírat za společnost 
> žádné smlouvy s výjimkou případů, kdy k tomu byl písemně zmocněn nebo písemně 
> pověřen a takové pověření nebo plná moc byly adresátovi tohoto emailu 
> případně osobě, kterou adresát zastupuje, předloženy nebo jejich existence je 
> adresátovi či osobě jím zastoupené známá.
> 
> This e-mail and any documents attached to it may be confidential and are 
> intended only for its intended recipients.
> If you received this e-mail by mistake, please immediately inform its sender. 
> Delete the contents of this e-mail with all attachments and its copies from 
> your system.
> If you are not the intended recipient of this e-mail, you are not authorized 
> to use, disseminate, copy or disclose this e-mail in any manner.
> The sender of this e-mail shall not be liable for any possible damage caused 
> by modifications of the e-mail or by delay with transfer of the email.
> 
> In case that this e-mail forms part of business dealings:
> - the sender reserves the right to end negotiations about entering into a 
> contract in any time, for any reason, and without stating any reasoning.
> - if the e-mail contains an offer, the recipient is entitled to immediately 
> accept such offer; The sender of this e-mail (offer) excludes any acceptance 
> of the offer on the part of the recipient containing any amendment or 
> variation.
> - the sender insists on that the respective contract is concluded only upon 
> an express mutual agreement on all its aspects.
> - the sender of this e-mail informs that he/she is not authorized to enter 
> into any contracts on behalf of the company except for cases in which he/she 
> is expressly authorized to do so in writing, and such authorization or power 
> of attorney is submitted to the recipient or the person represented by the 
> recipient, or the existence of such authorization is known to the recipient 
> of the person represented by the recipient.
> 
> 
> 
> --
> 
> 
> Thanks,
> Manohar Reddy P
> +91-9705302062.
> 
> ________________________________
> Tento e-mail a jakékoliv k němu připojené dokumenty jsou důvěrné a jsou 
> určeny pouze jeho adresátům.
> Jestliže jste obdržel(a) tento e-mail omylem, informujte laskavě neprodleně 
> jeho odesílatele. Obsah tohoto emailu i s přílohami a jeho kopie vymažte ze 
> svého systému.
> Nejste-li zamýšleným adresátem tohoto emailu, nejste oprávněni tento email 
> jakkoliv užívat, rozšiřovat, kopírovat či zveřejňovat.
> Odesílatel e-mailu neodpovídá za eventuální škodu způsobenou modifikacemi či 
> zpožděním přenosu e-mailu.
> 
> V případě, že je tento e-mail součástí obchodního jednání:
> - vyhrazuje si odesílatel právo ukončit kdykoliv jednání o uzavření smlouvy, 
> a to z jakéhokoliv důvodu i bez uvedení důvodu.
> - a obsahuje-li nabídku, je adresát oprávněn nabídku bezodkladně přijmout; 
> Odesílatel tohoto e-mailu (nabídky) vylučuje přijetí nabídky ze strany 
> příjemce s dodatkem či odchylkou.
> - trvá odesílatel na tom, že příslušná smlouva je uzavřena teprve výslovným 
> dosažením shody na všech jejích náležitostech.
> - odesílatel tohoto emailu informuje, že není oprávněn uzavírat za společnost 
> žádné smlouvy s výjimkou případů, kdy k tomu byl písemně zmocněn nebo písemně 
> pověřen a takové pověření nebo plná moc byly adresátovi tohoto emailu 
> případně osobě, kterou adresát zastupuje, předloženy nebo jejich existence je 
> adresátovi či osobě jím zastoupené známá.
> 
> This e-mail and any documents attached to it may be confidential and are 
> intended only for its intended recipients.
> If you received this e-mail by mistake, please immediately inform its sender. 
> Delete the contents of this e-mail with all attachments and its copies from 
> your system.
> If you are not the intended recipient of this e-mail, you are not authorized 
> to use, disseminate, copy or disclose this e-mail in any manner.
> The sender of this e-mail shall not be liable for any possible damage caused 
> by modifications of the e-mail or by delay with transfer of the email.
> 
> In case that this e-mail forms part of business dealings:
> - the sender reserves the right to end negotiations about entering into a 
> contract in any time, for any reason, and without stating any reasoning.
> - if the e-mail contains an offer, the recipient is entitled to immediately 
> accept such offer; The sender of this e-mail (offer) excludes any acceptance 
> of the offer on the part of the recipient containing any amendment or 
> variation.
> - the sender insists on that the respective contract is concluded only upon 
> an express mutual agreement on all its aspects.
> - the sender of this e-mail informs that he/she is not authorized to enter 
> into any contracts on behalf of the company except for cases in which he/she 
> is expressly authorized to do so in writing, and such authorization or power 
> of attorney is submitted to the recipient or the person represented by the 
> recipient, or the existence of such authorization is known to the recipient 
> of the person represented by the recipient.
> 
>       [[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

-- 
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Office: A 4.23
Email: pd....@cbs.dk  Priv: pda...@gmail.com

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to