• pandas如何去掉时间列的小时只保留日期


    最近无聊,想玩玩数据挖掘,就拿天池的天池新人实战赛之[离线赛]练练手。https://tianchi.aliyun.com/getStart/information.htm?spm=5176.100067.5678.2.2b282b2bAOqNmy&raceId=231522 

    其中在处理数据时,我需要以日期为索引,比如将前6天的数据作为训练集,第7天的数据作为预测集。下图是阿里给的数据。

    由于我们需要按天来统计数据,所以暂时认为几点购买的这个信息没什么用,我想去掉。要怎么去掉呢?

    我们可以看到,时间列是object类型,先对其进行转换。

    然后这里有几种方法去除时间:

    上图的第二句话是设置时间为索引。

    第二种方法:

    all_user['time'] = pd.to_datetime(all_user['time']).dt.date 
    这种方法很慢,请不要轻易尝试。
    或者:
    all_user['time'] = pd.to_datetime(all_user['time']).dt.floor('d') 
    具体可以参考:https://stackoverflow.com/questions/16176996/keep-only-date-part-when-using-pandas-to-datetime。
    然后我们就可以分割数据为训练集和预测集了。
    train_user = all_user['2014-11-22':'2014-11-27']
    train_user_predict = all_user['2014-11-28']
    valid_user = all_user['2014-11-29':'2014-12-04']
    valid_user_predict = all_user['2014-12-05']
    test_user = all_user['2014-12-13':'2014-12-18']
    test_user_predict = all_user['2014-12-19']
  • 相关阅读:
    Golang 学习之路
    Kubernetes 资源对象之DaemonSet
    Spring Cloud服务注册中心交付至kubernetes
    自动化运维之Ansible入门
    MySQL 高可用之主从复制
    Kubernetes 强大的namespace
    SaltStack RESTful API操作
    Kubernetes 服务自动发现CoreDNS
    2个月……
    一次游玩与这两周的一些感想
  • 原文地址:https://www.cnblogs.com/subic/p/9000129.html
Copyright © 2020-2023  润新知