pandas 只保留日期_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']

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值