個人時間統計工具。要點:
使用 dida365.com 來作為 gtd 工具
使用特殊格式記錄事件類別和花費的時間,如: 「[探索發現] 體驗 imac 開發環境 [3h]」
匯出資料
分析資料
%matplotlib inline
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.pylab import mpl
mpl.rcparams[
'font.sans-serif']=
['arial unicode ms'
]#指定預設字型
#清洗資料,只過濾出自己感興趣的事件
#解析title的一段**
import re
defparse_tag
(value)
:#解析tag
m = re.match(r'^(\[(.*?)\])?.*$'
, value)
if m and m.group(2)
:return m.group(2)
else
:return
'其他'
defparse_duration
(value)
:#解析時長
時間總覽
平均每天投資在自己身上的時間是多少?-> 全部時間 / 總天數
end_date - start_date
df['duration'].
sum(
) df[
'duration'].
sum()/
(end_date - start_date)
.days
精力分配
tag_list = df.groupby(
['tag'])
.sum()
tag_list[
'duration'
].plot(kind=
'pie'
, figsize=(8
,8), fontsize=
16, autopct=
'%1.2f%%'
)
專注力
長時間學習某項技能的能力
programming = df[df[
'tag']==
'程式設計'
]programming.head(
)programming.resample(
'm', how=
'sum'
).to_period(freq=
'm')
.plot(kind=
'bar'
, figsize=(8
,8), fontsize=
16)
連續時間的精力分配
以時間為橫軸,檢視精力分配。
# 為什麼不直接使用 df.pivot()? 因為有重複的行索引,如 2016-05-23
date_tags = df.reset_index(
).groupby(
['due date'
,'tag'])
.sum()
# 以 tag 作為列索引
dates = date_tags.reset_index(
).pivot(index=
'due date'
, columns=
'tag'
, values=
'duration'
)# 補足連續時間,可以看到哪些天沒有在學習
full_dates = dates.reindex(pd.date_range(start_date, end_date)
).fillna(0)
# 畫出柱狀圖
mysql 事件 日誌 Mysql事件監控日誌
建立監控表 create table t event history id int unsigned not null primary key auto increment,dbname varchar 128 not null default cat eventname varchar 128 n...
PowerShell寫入事件日誌
可能大家都知道,在powershell中使用 get eventlog 命令可以查詢windows系統中的事件日誌,如常見的應用程式 系統以及安全日誌。但有的時候我們可能又需要將一些關鍵資訊輸出到事件日誌中,我們就可以使用system.diagnostics.eventlog類,不僅可以將資訊寫入到...
PowerShell寫入事件日誌
可能大家都知道,在powershell中使用 get eventlog 命令可以查詢windows系統中的事件日誌,如常見的應用程式 系統以及安全日誌。但有的時候我們可能又需要將一些關鍵資訊輸出到事件日誌中,我們就可以使用system.diagnostics.eventlog類,不僅可以將資訊寫入到...