
python 有很多種方式處理日期和時(shí)間,常見(jiàn)的時(shí)間處理的模塊是datetime、time、calendar。能融匯貫通的了解和使用這三個(gè)模塊,才能輕而易舉地用python處理時(shí)間。本文以此為目的,通過(guò)講述各個(gè)時(shí)間模塊的概述、函數(shù)及相關(guān)知識(shí)細(xì)節(jié)、以及相應(yīng)的示例來(lái)講透它們的使用方式。
這三個(gè)模塊中,datetime(日期時(shí)間)模塊主要是用來(lái)表示日期的,就是我們常說(shuō)的年月日時(shí)分秒,calendar(日歷)模塊主要是用來(lái)表示年月日,是星期幾之類的信息,time(時(shí)間)模塊主要側(cè)重點(diǎn)在時(shí)分秒,粗略從功能來(lái)看,我們可以認(rèn)為三者是一個(gè)互補(bǔ)的關(guān)系,各自專注一塊。方便用戶依據(jù)不同的使用目的選用趁手的模塊。
文章著重點(diǎn)在于梳理出三個(gè)模塊的設(shè)計(jì)脈絡(luò),便于大家記憶里面的api。在需要的時(shí)候能夠去查找相應(yīng)的方法。由于文章篇幅較長(zhǎng),故將三個(gè)模塊和示例的講解拆分成幾篇前后關(guān)聯(lián)的文章,本文中重點(diǎn)講解datetime模塊。
一、概述
time模塊是比較基礎(chǔ)的一個(gè)模塊,可滿足對(duì)時(shí)間類型數(shù)據(jù)的基本處理;而 datetime模塊可以看做是對(duì)time模塊的一個(gè)高級(jí)封裝,功能更加強(qiáng)大。time模塊解決了時(shí)間的獲取和表示,datetime模塊則進(jìn)一步解決了快速獲取并操作時(shí)間中的年月日時(shí)分秒信息的能力。
datetime模塊是這三個(gè)時(shí)間模塊中使用的相對(duì)較為頻繁,datetime有六個(gè)類,比較常用的有datetime、date、time、timedelta這四個(gè),類date和類time可以看作是類datetime的子類別,雖然是分開(kāi)的,但實(shí)際上這三個(gè)類的使用方法(函數(shù))基本上是一樣的,所以學(xué)精通類datetime的屬性和方法,基本上可以無(wú)障礙的使用另兩個(gè)類了。
需要特別注意的是,datetime模塊中的類time和time模塊間的區(qū)別,不要混淆它們的用法,它們其中一個(gè)只是datetime模塊中的一個(gè)類別,需要用from datetime import time來(lái)進(jìn)行引用,而另一個(gè)是一個(gè)獨(dú)立的模塊,只需要用import time。如果同時(shí)使用這兩個(gè)'time',那請(qǐng)直接導(dǎo)入datetime模塊和time模塊,更細(xì)致的導(dǎo)入datetime模塊中的類time會(huì)混淆兩者的使用。
timedelta是datetime模塊中的一個(gè)非常有用的模塊,時(shí)間類型數(shù)據(jù)的計(jì)算可以通過(guò)timedelta方便快捷的實(shí)行,可以通過(guò)timedelta設(shè)置一個(gè)時(shí)間間隔,然后與指定時(shí)間進(jìn)行計(jì)算,既可以獲取某個(gè)時(shí)間范圍內(nèi)的目標(biāo),也可以計(jì)算時(shí)間間隔前后的日期時(shí)間。
有一點(diǎn)需要提前說(shuō)明一下,time類和datetime類都有一個(gè)屬性,它的值是一個(gè)tzinfo對(duì)象,里面包含了該time或者datetime的時(shí)區(qū)信息,一般稱這個(gè)time或者datetime對(duì)象是aware的,它能夠準(zhǔn)確換算成自epoch開(kāi)始的秒數(shù)。
如果該屬性設(shè)置為None,那么,這時(shí)的time對(duì)象或者datetime對(duì)象就沒(méi)有時(shí)區(qū)信息,具體它表示的是local time還是utc time,需要我們自己在程序中去決定。
這里我們所說(shuō)的local time是指我們所在時(shí)區(qū)的時(shí)間, utc time指的就是國(guó)際標(biāo)準(zhǔn)時(shí)間,也就是格林尼治時(shí)間。在本文中不會(huì)涉及講解市區(qū)和夏令時(shí)的相關(guān)操作,一切默認(rèn)為localtime。
datetime對(duì)象就是date對(duì)象和time對(duì)象的組合。
# 導(dǎo)入datetime模塊三個(gè)核心的類 from datetime import datetime # class one:datetime 日期時(shí)間 from datetime import date # class two:date 日期 from datetime import time # class three:time 時(shí)間
直接將時(shí)間的值逐個(gè)以參數(shù)的形式來(lái)創(chuàng)建
## 直接創(chuàng)建 datetime(2020,1,1,19,30,0,520) date(2020,1,1) time(19,30,0,520)
執(zhí)行結(jié)果:
datetime.datetime(2020, 1, 1, 19, 30, 0, 520) datetime.date(2020, 1, 1) datetime.time(19, 30, 0, 520)
獲取當(dāng)前日期用today,因?yàn)槿掌诘淖钚∮?jì)算單位是天,當(dāng)前日期就是今天;date對(duì)象只有today一種獲取當(dāng)前時(shí)間的方法,datetime對(duì)象卻有today和now兩種,結(jié)果是一致的,time對(duì)象沒(méi)有獲取當(dāng)前時(shí)間的方法,不過(guò)可以通過(guò)datetime對(duì)象來(lái)獲取。
datetime.now() # 獲取當(dāng)前日期時(shí)間 datetime.today() # 獲取當(dāng)前日期時(shí)間 date.today() # 獲取當(dāng)前日期
執(zhí)行結(jié)果:
datetime.datetime(2019, 12, 31, 14, 26, 21, 655429) datetime.datetime(2019, 12, 31, 14, 26, 21, 658430) datetime.date(2019, 12, 31)
類date和類time可以從類datetime中分離出來(lái),也可以通過(guò)combine方法合并成新的類datetime變量。
dt = datetime.now() # 獲取當(dāng)前日期時(shí)間
dt
dt.date() # 提取日期部分
dt.time() # 提取時(shí)間部分
datetime.combine(dt.date(),dt.time()) # 合并日期和時(shí)間
執(zhí)行結(jié)果:
datetime.datetime(2019, 12, 31, 14, 28, 36, 804160) datetime.date(2019, 12, 31) datetime.time(14, 28, 36, 804160) datetime.datetime(2019, 12, 31, 14, 28, 36, 804160)
除了直接以參數(shù)形式創(chuàng)建時(shí)間和獲取當(dāng)前時(shí)間這兩種方式之外,還有三種通過(guò)其他形式的時(shí)間格式轉(zhuǎn)換的方法可以創(chuàng)建時(shí)間:
其中時(shí)間戳最小單位為秒,包含了日期和時(shí)間的信息;ISO日歷公歷序數(shù)最小單位為天,僅包含了日期的信息。這兩種方法只適用于datetime對(duì)象和date對(duì)象,time對(duì)象無(wú)法使用。
fromisoformat方法三種類都可以使用,但是它有著固定的輸入格式要求,如果是非標(biāo)準(zhǔn)格式的字符串,那么無(wú)法使用該方法,后面的strptime方法才可以裝換非標(biāo)準(zhǔn)格式的時(shí)間。
## datetime datetime.fromtimestamp(1577777777.32452) # 時(shí)間戳轉(zhuǎn)時(shí)間(以秒為單位) datetime.fromordinal(737425) # 多格勒公歷序樹(shù)轉(zhuǎn)日期(以天為單位) datetime.fromisoformat("2020-01-01 12:00:00") # YYYY-MM-DD[*HH[:MM[:SS[.fff[fff]]]]
## date date.fromtimestamp(1577784872) # 時(shí)間戳轉(zhuǎn)時(shí)間(以秒為單位) date.fromordinal(739032) # 多格勒公歷序樹(shù)轉(zhuǎn)日期(以天為單位) date.fromisoformat("2020-01-01") # 字符轉(zhuǎn)時(shí)間,僅支持格式 YYYY-MM-DD,注意01的0也要有
## time time.fromisoformat("12:45:10") # 字符轉(zhuǎn)時(shí)間,僅支持格式HH:MM:DD
執(zhí)行結(jié)果:
datetime.datetime(2019, 12, 31, 15, 36, 17, 324520) datetime.datetime(2020, 1, 1, 0, 0) datetime.datetime(2020, 1, 1, 12, 0) datetime.date(2019, 12, 31) datetime.date(2024, 5, 26) datetime.date(2020, 1, 1) datetime.time(12, 45, 10)
datetime每一個(gè)類里面的參數(shù),都是可以通過(guò)獲取類屬性的方式單獨(dú)取出來(lái)的。
dt = datetime.today()
dt
dt.year
dt.month
dt.day
dt.hour
dt.minute
dt.second
dt.microsecond
執(zhí)行結(jié)果:
2019 12 31 15 22 40 354681
修改替換時(shí)間中的時(shí)間參數(shù),適用于三種類,例如:
dt = datetime.now()
dt
dt.replace(year=2020,day=15,hour=12)
執(zhí)行結(jié)果:
返回time模塊中的時(shí)間元組,適用于datetime對(duì)象和date對(duì)象,不適用于time對(duì)象,例如:
dt = datetime.now()
dt.timetuple()
執(zhí)行結(jié)果:
datetime.datetime(2019, 12, 31, 15, 27, 5, 882867) time.struct_time(tm_year=2019, tm_mon=12, tm_mday=31, tm_hour=15, tm_min=27, tm_sec=5, tm_wday=1, tm_yday=365, tm_isdst=-1)
返回ISO公歷序數(shù),即從公元0年1月1日起到目標(biāo)日期的天數(shù)。適用于datetime對(duì)象和date對(duì)象,不適用于time,例如:
dt = datetime.now()
dt.toordinal()
d = date.today()
d.toordinal()
執(zhí)行結(jié)果:
737424 737424
返回時(shí)間戳,即從公元1970年1月1日0時(shí)0分0秒起,到目標(biāo)時(shí)間的秒數(shù)。僅適用于datetime對(duì)象,不適用于time對(duì)象和date對(duì)象,例如:
dt = datetime.now()
dt.timestamp()
執(zhí)行結(jié)果:
1577777225.882867
返回目標(biāo)日期的工作日,0代表星期一,6代表星期日,適用于datetime對(duì)象和date對(duì)象,不適用于time對(duì)象,例如:
dt = datetime.now()
dt.weekday()
d = date.today()
d.weekday()
執(zhí)行結(jié)果:
1 1
返回目標(biāo)日期的工作日,1代表星期一,7代表星期日,它和weekday的區(qū)別僅僅在于起始序數(shù)的不同,適用于datetime對(duì)象和date對(duì)象,不適用于time對(duì)象,例如:
dt = datetime.now()
dt.isoweekday()
d = date.today()
d.isoweekday()
執(zhí)行結(jié)果:
2 2
返回一個(gè)包含目標(biāo)日期的年份、在一年中的第幾周、周幾三個(gè)元素在內(nèi)的元組,適用于datetime對(duì)象和date對(duì)象,不適用于time,例如:
dt = datetime.now()
dt.isocalendar()
d = date.today()
d.isocalendar()
執(zhí)行結(jié)果:
(2020, 1, 2) (2020, 1, 2)
返回一個(gè)標(biāo)準(zhǔn)化的時(shí)間字符串,適用三種類;datetime對(duì)象使用時(shí)返回完整的字符串,日期和時(shí)間的分隔部分默認(rèn)為字符“T”,可設(shè)定;date對(duì)象使用時(shí)只返回日期部分的字符串,time對(duì)象使用時(shí)只返回時(shí)間部分的字符串,例如:
dt = datetime.now()
dt.isoformat() # 默認(rèn)以字符“T”分隔日期和時(shí)間 dt.isoformat(sep=" ") # 以空格“ ”分隔日期和時(shí)間 d = date.today() d.isoformat() # 日期部分 t = datetime.now().time() t.isoformat() # 時(shí)間部分
執(zhí)行結(jié)果:
'2019-12-31T15:27:05.882867' '2019-12-31 15:27:05.882867' '2019-12-31' '15:27:05.882867'
返回表示日期和時(shí)間的字符串,由明確的格式字符串控制,適用三種類。
詳細(xì)的字符串格式如下所示:
格式含義示例%a工作日(縮寫(xiě))Sun, Mon, …, Sat%A工作日(全稱)Sunday, Monday, …, Saturday%w以十進(jìn)制數(shù)表示的工作日,其中0是星期日,6是星期六。0,1,…,6%d月份中的一天,十進(jìn)制數(shù)字表示。01,02,…,31%b月份,縮寫(xiě)名稱。Jan, Feb, …, Dec%B月份,全名。January, February, …, December%m月份,十進(jìn)制數(shù)字01,02,…,12%y年份(無(wú)世紀(jì)的年份,后兩位),十進(jìn)制數(shù)字。00,01,…,99%Y年份(四位完整),十進(jìn)制數(shù)字。0001,0002,…,2013,2014,…,9998,9999%H小時(shí)(24小時(shí)制),十進(jìn)制數(shù)字。00,01,…,23%I小時(shí)(12小時(shí)制)01,02,…,12%pAM或PMAM, PM%M分鐘,十進(jìn)制數(shù)字。00,01,…,59%S秒,以零填充的十進(jìn)制數(shù)。00,01,…,59%f微秒,以零填充的十進(jìn)制數(shù)。000000,000001,…,999999%zUTC偏移量的格式 ±HHMM[SS[.ffffff]](empty), +0000, -0400, +1030, +063415, -030712.345216%Z時(shí)區(qū)名稱(empty), UTC, EST, CST%j一年中的一天,十進(jìn)制數(shù)字。001,002,…,366%U一年中的第幾周(星期日為一周的第一天),以零填充的十進(jìn)制數(shù)表示。以周六所在年份為基準(zhǔn)。00,01,…,53%W一年中的第幾周(星期一為一周的第一天),以零填充的十進(jìn)制數(shù)表示。以周日所在年份為基準(zhǔn)00,01,…,53%c日期和時(shí)間Tue Aug 16 21:30:00 2019%x日期12/30/19%X時(shí)間17:24:13%%文字'%'字符。%%G年份,以零填充的十進(jìn)制數(shù)表示。0001,0002,…,2013,2014,…,9998,9999%u工作日,十進(jìn)制數(shù)字,其中1為星期一。1,2,…,7%V一年中的第幾周(星期一為一周的第一天)。第01周是包含1月4日的一周。01,02,…,53
示例:
dt = datetime.now()
d = dt.date()
t = dt.time()
dt.strftime("%Y-%m-%d") # 常用日期一
d.strftime("%Y/%m/%d") # 常用日期二
t.strftime("%H:%M") # 時(shí)分
t.strftime("%p %I:%M") # 12時(shí)制時(shí)分
dt.strftime("%Y%m%d%H%M%S%f")+str(".txt") # 文件名 print("現(xiàn)在是北京時(shí)間{0}年{1}月{2}日,今天是{0}年的第{3}周,是{0}年的第{4}天".format(dt.strftime("%Y"),dt.strftime("%m"),dt.strftime("%d"),dt.strftime("%U"),dt.strftime("%j")))
執(zhí)行結(jié)果:
'2019-12-31' '2019/12/31' '15:27' 'PM 03:27' '20191231152705882867.txt' 現(xiàn)在是北京時(shí)間2019年12月31日,今天是2019年的第52周,是2019年的第365天
將字符串解析為datetime指定格式的對(duì)象,由明確的格式字符串控制,與strftime方法相對(duì)應(yīng)。其內(nèi)部還是先調(diào)用的time模塊中的striptime方法,獲取struct_time對(duì)象,再利用struct_time對(duì)象中的年月日時(shí)分秒信息構(gòu)建datetime對(duì)象。
strftime 即 string format time,用來(lái)將時(shí)間格式化成字符串
strptime 即string parse time,用來(lái)將字符串解析成時(shí)間。
strptime方法只適用于datetime對(duì)象。例如:
datetime.strptime("2020-01-01 12:00:00","%Y-%m-%d %H:%M:%S")
執(zhí)行結(jié)果:
datetime.datetime(2020, 1, 1, 12, 0)
以上介紹的方法中:
在日常的實(shí)際使用中,我們經(jīng)常需要對(duì)日期進(jìn)行比較和加減運(yùn)算。得益于python的操作符重載能力,python中可以方便地對(duì)date對(duì)象之間,或者datetime對(duì)象之間進(jìn)行大小比較和減法(-)操作。
需要注意的是,這里僅限于同類對(duì)象之間的比較和減法運(yùn)算,而且,不包括與time模塊對(duì)象的比較和運(yùn)算。datetime模塊中的三個(gè)類,time對(duì)象僅能與同類做比較,不能進(jìn)行任何運(yùn)算,而date對(duì)象和datetime對(duì)象是可以和同中類型對(duì)象做減法運(yùn)算的。
示例一:
## time對(duì)象只能同類做比較 time(21,2,4) >time(20,3,2)
# output1: True
## datetime對(duì)象可以比較,也可以做運(yùn)算
dt = datetime(2019, 12, 31, 15, 22, 40, 354681)
dt - datetime(2019,1,1,0,0,0)
dt > datetime(2020,1,1,0,0,0)
# output2: datetime.timedelta(days=363, seconds=62653, microseconds=913011)
# output3: False
## date對(duì)象可以比較,也可以做運(yùn)算 date(2020,1,1) - date(2019,1,1) date(2020,1,1) > date(2019,12,31)
# output4: datetime.timedelta(days=365)
# output5: True
datetime模塊中三種對(duì)象的比較運(yùn)算對(duì)比:
類能否同類比較能否同類作運(yùn)算(僅減法)能否和timedelta類進(jìn)行運(yùn)算datetime能能能date能能能time能不能不能
從示例中可以看到,datetime對(duì)象和date對(duì)象同類中做減法返回的結(jié)果是datetime.timedelta對(duì)象,而這個(gè)就是datetime模塊中專門用于時(shí)間運(yùn)算的類。個(gè)人認(rèn)為,類timedelta是datetime模塊中最有價(jià)值的一部分,需要重點(diǎn)學(xué)習(xí)一下。
timedelta對(duì)象表示持續(xù)時(shí)間,兩個(gè)日期或時(shí)間之間的差,它一共有7個(gè)參數(shù)可以用來(lái)定義timedelta對(duì)象。
但不是所有參數(shù)都會(huì)保留顯示,timedelta對(duì)象定義后,內(nèi)部?jī)H存儲(chǔ)天(day),秒(seconds)和微秒(microseconds)。其余參數(shù)將按以下單位換算轉(zhuǎn)換為天、秒、微秒:
相應(yīng)的轉(zhuǎn)換公式為:
它們之間的裝換
示例:
t = timedelta(50,27,10,29000,7,8,2) # output: datetime.timedelta(days=64, seconds=29276, microseconds=10)
timedelta對(duì)象進(jìn)行多種合理的時(shí)間運(yùn)算,如timedelta對(duì)象間加減法,timedelta對(duì)象與數(shù)值的乘除法運(yùn)算。
示例二:
## timedelta對(duì)象可以進(jìn)行的運(yùn)算 t = timedelta(50,27,10,29000,7,8,2) d = timedelta(5,3,234,324,35,16,0) t + d # timedelta對(duì)象間加減法 t - d t * 2.3 # timedelta對(duì)象與數(shù)值乘除法 t / 2.8
示例三:
t // 2 # timedelta對(duì)象整除,返回timedelta對(duì)象 t // d # timedelta對(duì)象間整除,返回整數(shù) t / d # timedelta對(duì)象間相除,返回float t % d # timedelta對(duì)象間相除取余數(shù),返回timedelta對(duì)象 divmod(t,d) # 求模
執(zhí)行結(jié)果:
datetime.timedelta(days=32, seconds=14638, microseconds=5) 11 11.305345573308651 datetime.timedelta(days=1, seconds=63739, microseconds=433436)
(11, datetime.timedelta(days=1, seconds=63739, microseconds=433436))
可以用total_seconds()方法獲得一個(gè)timedelta對(duì)象的秒數(shù)表示,可用于和時(shí)間戳進(jìn)行運(yùn)算。
timedelta.total_seconds(t) t.days * 86400 + t.seconds + t.microseconds/1000000 # output1: 5558876.00001 # output2: 5558876.00001
timedelta對(duì)象含有三個(gè)屬性:days,seconds, microseconds,days屬性可以取負(fù)值,另外兩個(gè)屬性都只能是正值。示例
t = timedelta(days=27,seconds=47283,microseconds=123942)
t
n = -t # 去t的負(fù)數(shù) n t + n # 等于0 t.seconds + n.seconds # 秒數(shù)相加等于86399 t.microseconds + n.microseconds # 微秒相加等于1,000,000 # timedelta對(duì)象也可以使用abs()函數(shù)求絕對(duì)值 abs(n) # 返回對(duì)應(yīng)正數(shù)的timedelta對(duì)象
執(zhí)行結(jié)果:
datetime.timedelta(days=27, seconds=47283, microseconds=123942) datetime.timedelta(days=-28, seconds=39116, microseconds=876058) datetime.timedelta(0) 86399 1000000 datetime.timedelta(days=27, seconds=47283, microseconds=123942)
前面提到的只是timedelta對(duì)象的一些基礎(chǔ)內(nèi)容,實(shí)際使用上更多的是和date對(duì)象或者datetime對(duì)象進(jìn)行計(jì)算,計(jì)算主體是date對(duì)象或者datetime對(duì)象,timedelta對(duì)象作為輔助。
示例:
# date運(yùn)算 date(2020,1,1) - timedelta(days=100) date(2020,1,1) + timedelta(days=100)
# datetime運(yùn)算
dt = datetime(2020,2,22,20,2,2)
dt
dt + timedelta(days=20,seconds=4023)
dt - timedelta(days=20,seconds=4023)
執(zhí)行結(jié)果:
# date運(yùn)算結(jié)果 datetime.date(2019, 9, 23) datetime.date(2020, 4, 10)
# datetime運(yùn)算結(jié)果 datetime.datetime(2020, 2, 22, 20, 2, 2) datetime.datetime(2020, 3, 13, 21, 9, 5) datetime.datetime(2020, 2, 2, 18, 54, 59)
通過(guò)以上對(duì)datetime模塊的各種對(duì)象的詳細(xì)介紹,相信足以對(duì)它的各種操作有了比較完整的了解,這些都是基礎(chǔ)的示例運(yùn)用,更進(jìn)一步的使用要通過(guò)實(shí)際運(yùn)用中各種不一樣的需求來(lái)實(shí)踐。
數(shù)據(jù)分析咨詢請(qǐng)掃描二維碼
若不方便掃碼,搜微信號(hào):CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無(wú)論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫(kù)管理中,“大表” 始終是性能優(yōu)化繞不開(kāi)的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫(kù)表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動(dòng)態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開(kāi)始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價(jià)值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲(chǔ)的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫(kù)表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實(shí)戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫(kù))處理 Excel 數(shù)據(jù)時(shí),“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗(yàn)與 t 檢驗(yàn):差異、適用場(chǎng)景與實(shí)踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計(jì)學(xué)領(lǐng)域,假設(shè)檢驗(yàn)是驗(yàn)證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲(chǔ)的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計(jì)劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計(jì)劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對(duì)象的 text 與 content:區(qū)別、場(chǎng)景與實(shí)踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請(qǐng)求開(kāi)發(fā)時(shí)(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價(jià)值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫(kù)表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請(qǐng)求工具對(duì)比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請(qǐng)求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長(zhǎng)浮點(diǎn)數(shù)據(jù)的科學(xué)計(jì)數(shù)法問(wèn)題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長(zhǎng)浮點(diǎn)數(shù)據(jù)時(shí)的科學(xué)計(jì)數(shù)法問(wèn)題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價(jià)值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運(yùn)營(yíng)問(wèn)題、提升執(zhí)行效率的核心手段,其價(jià)值 ...
2025-09-12用 SQL 驗(yàn)證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實(shí)戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過(guò)程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計(jì)” 與 “用戶體驗(yàn) ...
2025-09-11塔吉特百貨孕婦營(yíng)銷案例:數(shù)據(jù)驅(qū)動(dòng)下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見(jiàn)頂” 的當(dāng)下,精準(zhǔn)營(yíng)銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價(jià)值 在數(shù)據(jù)驅(qū)動(dòng)決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實(shí)踐到業(yè)務(wù)價(jià)值挖掘 在數(shù)據(jù)分析場(chǎng)景中,聚類分析作為 “無(wú)監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計(jì)模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價(jià)值導(dǎo)向 統(tǒng)計(jì)模型作為數(shù)據(jù)分析的核心工具,并非簡(jiǎn)單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10