1.两个datetime类型的数据相减,得到的是Timedelta 时间段类型
2.datetime写入excel后需要设置单元格格式才能看到,否则全部为0,所以先转成str再写入。
3.datetime不能相加
4.处理多个同名输入,比如:in1 in2 in3 应该用循环去处理,而不是一个个的算
5.timedelta 输出到excel中有 days怎么办,使用strftime(’%Y%m%d’)转换。
6.如何合并多行,每一列不相同的 累加:
groupby 和 sum,所有相同的列 作为 groupby的key
excel_11 = excel_1.groupby(by=[‘EMNO’,‘DATE’,‘over_time’]).agg({‘00:00-07:00(ZG)’: sum, ‘07:00-18:00(ZG)’: sum, ‘18:00-23:00(ZG)’: sum, ‘23:00-24:00(ZG)’: sum})
注意:为空的key不行
7.把datedelta类型的1:30 转成 1.5,需要
d = timedelta(minutes=19,hours=3)
print(round(d.seconds/3600,2))
timedelta只能转换成 天 分钟 秒
8.执行时间长的程序,别人说没反应,叫他多等等
9.查看数据类型,pandas读取 日期 数据后,用type(查看一列中某一项的数据),发现是<class ‘pandas._libs.tslibs.timestamps.Timestamp’> 用.dtype查看一列数据,发现是datetime64[ns]
10.按条件删除行,df = df.drop(df[df.score < 50].index)这个语句只能用基本运算符 不能用 in 和 not in。按条件选取行,df = df[ df[df.score < 50] ] 语句中不能有 and or
尝试失败,直接用apply