如何将时间戳转换为month-year。即9/5/2019至Sep-2019。
我尝试了这个,但是我正在数组。这就是我所做的。
pd.DatetimeIndex(data ['Timestamp'])。year
pd.DatetimeIndex(data ['Timestamp'])。date
在这种情况下,我得到了可以将它们附加在一起的数组。但是我正在寻找更高效的方法,并且还会收到像“ Sep”这样的字母月份,而不是9。
谢谢
答案 0 :(得分:0)
您可以使用以下方式转换日期时间格式:
$ cat newdate.csv
Name,Date
Will,9/5/2019
Bill,11/5/2019
df=pd.read_csv('newdate.csv')
df['Date']=pd.to_datetime(df['Date']).dt.strftime('%b-%Y')
#In [323]: df
#Out[323]:
# Name Date
#0 Will Sep-2019
#1 Bill Nov-2019
如果您更新列名,则可以直接使用下一行
df['Date']=pd.to_datetime(df['Date']).dt.strftime('%b-%Y')
因此,如果您在日期列中使用的名称不是“日期”,则只需将其更改为您的列名称
答案 1 :(得分:0)
我在应用程序中用于格式化日期时间的方法使用datetime.datetime
模块。
我使用datetime.strftime()
函数从datetime
对象获取格式化的字符串
代码:
from datetime import datetime
timestamp = datetime.now()
pretty_date = datetime.strftime(timestamp, '%d/%b/%y')
print(pretty_date)
输出:
18/Nov/19
完全相同的方法可用于date
个对象。
代码:
from datetime import date
timestamp = date.today()
pretty_date = date.strftime(timestamp, '%d/%b/%y')
print(pretty_date)
输出:
18/Nov/19
有关strptime
和strftime
函数的格式代码列表,可以在python docs for datetime