在当今时代,分析带有日期和时间的数据集是一项繁琐的任务。由于月份的不同长度、工作日和周末的分布、闰年和时区等因素,根据我们的上下文需要考虑这些事情。因此,出于这个原因,Python 定义了一种专门用于日期和时间的新数据类型,称为 datetime。

然而,在许多数据集中,字符串被用来表示日期。因此,在这个主题中,您将学习如何将日期字符串转换为 datetime 格式,并了解这套强大的工具如何帮助有效处理复杂的时间序列数据。

这种情况背后的挑战是日期字符串的表示方式。例如,'Wednesday, June 6, 2018' 可以表示为 '6/6/18' 和 '06-06-2018'。所有这些格式都定义了相同的日期,但代码表示转换每个格式的方法略有不同。

fromdatetime import datetime  
  
# Define dates as the strings     
dmy_str1 = 'Wednesday, July 14, 2018'  
dmy_str2 = '14/7/17'  
dmy_str3 = '14-07-2017'  
  
# Define dates as the datetime objects  
dmy_dt1 = datetime.strptime(date_str1, '%A, %B %d, %Y')  
dmy_dt2 = datetime.strptime(date_str2, '%m/%d/%y')  
dmy_dt3 = datetime.strptime(date_str3, '%m-%d-%Y')  
  
#Print the converted dates  
print(dmy_dt1)  
print(dmy_dt2)  
print(dmy_dt3)  

输出:

2017-07-14 00:00:00
2017-07-14 00:00:00
2018-07-14 00:00:00

转换日期字符串列

此转换演示了如何将数据集中的整个日期字符串列转换为 datetime 格式。

从现在开始,您必须使用名为 eth 的 DataFrame,其中包含有关以太坊的历史数据,以及由以太坊平台生成的区块链的加密货币。数据集包含以下列:

  • date: 定义实际日期,每日在 00:00 UTC。
  • txVolume: 指的是以美元为单位的未调整的总输出价值,即区块链上的交易输出。
  • txCount: 定义在公共区块链上执行的交易数量。
  • marketCap: 指的是以美元为单位的单价乘以流通中的单位数量。
  • price: 指的是每日在 00:00 UTC 的美元开盘价。
  • generatedCoins: 指的是新币的数量。
  • exchangeVolume: 指的是在交易所(如 GDAX 和 Bitfinex)以美元计量的实际交易量。

标签: Pandas, Pandas教程, Pandas库, Pandas基础, Pandas学习, Pandas使用, Pandas指南, Pandas入门教程, Pandas模块, Pandas数据库, Pandas实战教程, Pandas用法总结, Pandas文档