python 处理dataframe中的时间字段方法

yipeiwu_com5年前Python基础

在机器学习过程中,通常会通过pandas读取csv文件,保持成dadaframe格式,然而有时候需要对dataframe中的时间字段进行数据建模,比如时间格式为datetime,那么像一般操作dataframe的方式来操作时间字段会报错的,所以在使用sklearn库进行fit和predict的时候,通常要把时间字段首先转换为timestamp格式,在fit和predict之后,如果需要matplotlib绘图的时候,再把timestamp格式转换为时间字符串,比如2017-02-01 14:25:14。

下面是我处理过的一段代码,希望可以帮到童鞋们!

doc_list1 = []
for i in doc1.iloc[:,1:2].values.tolist():        # 转换成了时间戳格式
  for j in i:
    dt = time.strptime(j, "%Y-%m-%d %H:%M:%S")
    dt_new = time.mktime(dt)
    doc_list1.append(dt_new)

doc_list2 = []
for i in doc_list1:
  time_local = time.localtime(i)
  dt = time.strftime("%Y-%m-%d %H:%M:%S",time_local)
  dt1 = datetime.datetime.strptime(dt, "%Y-%m-%d %H:%M:%S")
  doc_list2.append(dt1)
X1 = np.mat(doc_list1).T
y1= test_target1001
clf = AdaBoostRegressor(DecisionTreeRegressor(max_depth=5),n_estimators=1000, random_state=rng)
clf.fit(X1,y1)
yhat1 = clf.predict(X1)

补充一下:如果value不是datetime格式还需要进行转换

value = result.iloc[:,1]
list = []
for i in value:
    print(type(i.to_pydatetime().timetuple()),i)
    list.append(time.mktime(i.to_datetime().timetuple()))
print(list)

以上这篇python 处理dataframe中的时间字段方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

老生常谈Python基础之字符编码

老生常谈Python基础之字符编码

前言 字符编码非常容易出问题,我们要牢记几句话: 1.用什么编码保存的,就要用什么编码打开 2.程序的执行,是先将文件读入内存中 3.unicode是父编码,只能encode解码成其他编...

python MNIST手写识别数据调用API的方法

python MNIST手写识别数据调用API的方法

MNIST数据集比较小,一般入门机器学习都会采用这个数据集来训练 下载地址:yann.lecun.com/exdb/mnist/ 有4个有用的文件: train-images-idx3...

python学生信息管理系统(初级版)

python学生信息管理系统(初级版)

本文为大家分享了python学生信息管理系统的初级实现代码,供大家参考,具体内容如下 学生信息管理项目,要求带操作界面,并完成每项操作: +----------------------+...

利用Pandas和Numpy按时间戳将数据以Groupby方式分组

首先说一下需求,我需要将数据以分钟为单位进行分组,然后每一分钟内的数据作为一行输出,因为不同时间的数据量不一样,所以所有数据按照最长的那组数据为准,不足的数据以各自的最后一个数据进行补足...

python通过TimedRotatingFileHandler按时间切割日志

python通过TimedRotatingFileHandler按时间切割日志

通过TimedRotatingFileHandler按时间切割日志 线上跑了一个定时脚本,每天生成的日志文件都写在了一个文件中。但是日志信息不可能输出到单一的一个文件中。 原因有二:1....