python轉化excel數(shù)字日期為標準日期操作
伙伴遇到一個關于excel導入數(shù)據(jù)到python中,日期變成數(shù)字而不是日期格式的問題。第一反應這個數(shù)字應該是excel里面的時間戳類似的,所以我就實驗增加一天是不是對應的數(shù)字就加1。最后證明了我的想法,這樣就可以倒推excel里面的數(shù)字日期是從那一年開始計數(shù)的。
我們先看一下excel本身打開數(shù)據(jù)的樣子:

我們再看看python直接導入后日期的樣子:

那我們的目標就是將字段列名的日期數(shù)據(jù)替換成標準的日期格式,具體的思路是:
1、先用excel實驗2018-11-02對應的日期時間戳是43406。
2、我再用2018-11-02減43406看看是從那一年開始計算的,所以得出結論是1899-12-30。
3、那最后要達成目標就只需要時間戳+1899-12-30就等于對應的當前日期
這是替換后的列名

以下代碼是將excel時間戳轉化成標準日期,并替換原有列名的具體步驟:
import pandas as pd
import datetime
data=pd.read_excel(r'xxxx.xlsx')
col=list(data.columns)#獲取列名
print(col)
col_new=[]
def date(dates):#定義轉化日期戳的函數(shù),dates為日期戳
delta=datetime.timedelta(days=dates)
today=datetime.datetime.strptime('1899-12-30','%Y-%m-%d')+delta#將1899-12-30轉化為可以計算的時間格式并加上要轉化的日期戳
return datetime.datetime.strftime(today,'%Y-%m-%d')#制定輸出日期的格式
for x in range(len(col[2:9])):#將excel的時間戳循環(huán)替換
col_date=date(col[2:9][x])
col_new.append(col_date)
col[2:9]=col_new
data.columns=col
補充知識:python做Excel表(顯示時間)
如下所示:

import openpyxl
import datetime
wb = openpyxl.Workbook()
ws = wb.active
ws.title
ws['A1'] = 520
ws.append([1,2,3])
ws['A3'] = datetime.datetime.now()
wb.save('time.xlsx')
以上這篇python轉化excel數(shù)字日期為標準日期操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python爬蟲圖片懶加載技術 selenium和PhantomJS解析
這篇文章主要介紹了Python爬蟲圖片懶加載技術 selenium和PhantomJS解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-09-09
Python讀取postgresql數(shù)據(jù)庫詳情
這篇文章主要介紹了Python讀取postgresql數(shù)據(jù)庫詳情,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09
Python numpy.array()生成相同元素數(shù)組的示例
今天小編就為大家分享一篇Python numpy.array()生成相同元素數(shù)組的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11
Python爬取豆瓣數(shù)據(jù)實現(xiàn)過程解析
這篇文章主要介紹了Python爬取豆瓣數(shù)據(jù)實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-10-10

