【问题标题】:How to get today's date with pandas?如何与熊猫取得今天的约会?
【发布时间】:2018-03-16 11:09:10
【问题描述】:

我有一个 python 脚本,它可以导入一个 df,对其进行处理,然后输出到一个 csv 文件。我正在使用pandas.write_csv() 来输出文件。

我希望标准化我的脚本命名输出文件的方式。具体来说,我希望脚本将今天的日期提取为格式:MMDDYYYY 并将其插入到 CSV 文件的末尾。

outputfile = 'mypotentialfilename_MMDDYYYY.csv'
pd.write_csv(outputfile) 

过去,我曾见过将日期插入文本的快速方法,但我似乎找不到要查看的代码。任何帮助表示赞赏。

【问题讨论】:

  • 试着记住:strptime 读取字符串到日期时间和 strftime 打印日期时间字符串,你只需查找它。我经常需要查找所有格式选项。例如 "%A" 以文本形式返回工作日。

标签: python pandas csv date datetime


【解决方案1】:

您可以使用dt.todaydt.strftime 做到这一点:

import datetime as dt

today = dt.datetime.today().strftime('%m%d%Y')  
output_file = 'filename_{}.csv'.format(today)

此外,pd.write_csv 在较新版本中已弃用/删除。我建议将你的 pandas 升级到最新版本(目前为 v0.20),并使用df.to_csv

【讨论】:

  • 完美。我的熊猫实际上利用.to_csv 快速输入这个例子,我求助于旧习惯。感谢您的及时帮助!
【解决方案2】:

python的format可以处理日期输入

today = pd.Timestamp('today')
'filename_{:%m%d%Y}.csv'.format(today)

'filename_10042017.csv'

使用 Python 3.6 的 f-strings

today = pd.Timestamp('today')
f'filename_{today:%m%d%Y}.csv'

'filename_10042017.csv'

【讨论】:

  • 我不知道这是可能的。太棒了。
  • 我发现我们也可以使用now = pd.to_datetime('today') 来获得相同的效果。 pd.Timestamp 对我来说是新的。但是,我经常使用to_datetime。所以,这对我来说更容易记住。
猜你喜欢
  • 2018-04-25
  • 1970-01-01
  • 1970-01-01
  • 2018-07-15
  • 1970-01-01
  • 1970-01-01
  • 2018-03-14
  • 1970-01-01
  • 2018-11-15
相关资源
最近更新 更多