📌  相关文章
📜  Pandas 将字符串转换为日期

📅  最后修改于: 2020-10-29 04:49:37             🧑  作者: Mango

将字符串转换为日期

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

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

此方案背后的挑战是如何表达日期字符串。例如,“ 2018年6月6日星期三”也可以显示为“ 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,该数据框架包含以太坊的历史数据,以及一种加密货币,其区块链由以太坊平台生成。数据集包括以下几列:

  • 日期:定义实际的日期,每天在世界标准时间00:00。
  • txVolume:它是指未调整的以美元为单位的总价值的量度,在区块链上的输出中。
  • txCount:定义在公共区块链上执行的交易数量。
  • marketCap:以美元为单位的价格乘以流通的单位数。
  • 价格:指00:00 UTC的美元开盘价。
  • generateCoins:指代新硬币的数量。
  • exchangeVolume:指在GDAX和Bitfinex等交易所中以美元为单位的实际交易量。