We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
現在の読み込みではbirth_dayがstrで読み込まれています。(Rではdate形式になっている) このため、P-045の回答ではpd.to_datetimeでdatetime形式に変換後、再度.dtで文字列に変換されています。 問題の意図にそったDataFrameにするためにも読み込み時にbirth_dayをparse_dates指定でdtype='datetime64'として読み出した方がよいのではないですか?
pd.to_datetime
.dt
df_customer = pd.read_sql(sql='select * from customer', con=conn, parse_dates={'birth_day'})
これによりP-045は下記で回答でき、問題の意図に沿ったものになると考えます。
pd.concat([df_customer['customer_id'], df_customer['birth_day'].dt.strftime('%Y%m%d')], axis =1).head(10)
The text was updated successfully, but these errors were encountered:
Issueありがとうございます。単純に読み込んだ状態をスタート地点として、そこから必要となる様々な手間を駆使することも狙って作っております。birth_dayについては、「datetime.date」で取り込まれているかと思います。このdatetime.datetimeのようでちょっと違うdatetime.dateに対し、to_datetimeを使うとdatetimeのようにstrftime使えるよ、ということをあえて問いています。実務の分析やシステム開発のコードでは、ご指摘のように入り口で指定し、全体をシンプルにするのが良いかと思いますが、ここでは100本ノックという性質上、コード毎の手間(to_datetimeなど)を含め訓練として残してありますので、その点ご了承いただければと思います。
実他Issueでも皆さんにシェアすべき知見などいただいておりますので、「こういったやり方があるよ」というWikiを今後整備していこうと考えています。本件のparse_dates={'birth_day'})は、実務においてとても役立つ知識だと思いますので、設問ファイルや解答例ファイルに修正をかけるのではなくそちらの掲載させていただく形で紹介させていただくかもしれません。
どうぞよろしくお願いします。
Sorry, something went wrong.
Wikiネタとしてピン留めし、Issueとしては一旦クローズ
No branches or pull requests
現在の読み込みではbirth_dayがstrで読み込まれています。(Rではdate形式になっている)
このため、P-045の回答では
pd.to_datetime
でdatetime形式に変換後、再度.dt
で文字列に変換されています。問題の意図にそったDataFrameにするためにも読み込み時にbirth_dayをparse_dates指定でdtype='datetime64'として読み出した方がよいのではないですか?
df_customer = pd.read_sql(sql='select * from customer', con=conn, parse_dates={'birth_day'})
これによりP-045は下記で回答でき、問題の意図に沿ったものになると考えます。
pd.concat([df_customer['customer_id'], df_customer['birth_day'].dt.strftime('%Y%m%d')], axis =1).head(10)
The text was updated successfully, but these errors were encountered: