根据日期将数据框拆分为两个
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据日期将数据框拆分为两个相关的知识,希望对你有一定的参考价值。
我有像这样1000行的数据集
Date, Cost, Quantity(in ton), Source, Unloading Station
01/10/2015, 7, 5.416, XYZ, ABC
我想在日期的基础上拆分数据。对于例如到2016年12月20日为训练数据,之后是测试数据。
我该怎么分裂?可能吗?
答案
您可以通过将列转换为pandas to_datetime类型并将其设置为索引来轻松完成此操作。
import pandas as pd
df['Date'] = pd.to_datetime(df['Date'])
df = df.set_index(df['Date'])
df = df.sort_index()
以这种格式获取数据后,您可以简单地使用日期作为创建分区的索引,如下所示:
# create train test partition
train = df['2015-01-10':'2016-12-20']
test = df['2016-12-21':]
print('Train Dataset:',train.shape)
print('Test Dataset:',test.shape)
另一答案
假设您的数据集是pandas数据框,并且Date
列是datetime
dtype:
split_date = pd.datetime(2016,12,20)
df_training = df.loc[df['Date'] <= split_date]
df_test = df.loc[df['Date'] > split_date]
以上是关于根据日期将数据框拆分为两个的主要内容,如果未能解决你的问题,请参考以下文章