Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在pandas中,从日期序列中减去日期,得到天数序列_Python_Pandas_Datetime - Fatal编程技术网

Python 在pandas中,从日期序列中减去日期,得到天数序列

Python 在pandas中,从日期序列中减去日期,得到天数序列,python,pandas,datetime,Python,Pandas,Datetime,在我的CSV文件中,有一列显示日期和时间,格式为6/1/2019 12:00:00 AM。 我的要求是从所有行中删除时间,然后该行将只有日期。在此之后,我必须从基准日期2019年1月1日减去所有行,因此该行应该只有天数。例如,如果我们从2019年1月1日减去2019年6月1日,则该行的值为6 我试着用下面的代码来删除时间 import pandas as pd df = pd.read_csv('sample.csv', header = 0) from datetime import date

在我的CSV文件中,有一列显示日期和时间,格式为6/1/2019 12:00:00 AM。 我的要求是从所有行中删除时间,然后该行将只有日期。在此之后,我必须从基准日期2019年1月1日减去所有行,因此该行应该只有天数。例如,如果我们从2019年1月1日减去2019年6月1日,则该行的值为6

我试着用下面的代码来删除时间

import pandas as pd
df = pd.read_csv('sample.csv', header = 0)
from datetime import datetime,date
df['date'] = pd.to_datetime(df['date']).dt.date
如何使用pandas和python datetime库从列中的每一行中减去日期2019年1月1日,并获得天数?

从datetimes中删除时间(将其转换为
00:00:00
),然后减去datetime,最后将输出时间增量转换为天:

样本

df = pd.DataFrame({'date': pd.date_range('2019-01-06 12:00:00', periods=10)})

df['days'] = df['date'].dt.floor('d').sub(pd.Timestamp('2019-01-01')).dt.days
print (df)
                 date  days
0 2019-01-06 12:00:00     5
1 2019-01-07 12:00:00     6
2 2019-01-08 12:00:00     7
3 2019-01-09 12:00:00     8
4 2019-01-10 12:00:00     9
5 2019-01-11 12:00:00    10
6 2019-01-12 12:00:00    11
7 2019-01-13 12:00:00    12
8 2019-01-14 12:00:00    13
9 2019-01-15 12:00:00    14
df = pd.DataFrame({'date': pd.date_range('2019-01-06 12:00:00', periods=10)})

df['days'] = df['date'].dt.floor('d').sub(pd.Timestamp('2019-01-01')).dt.days
print (df)
                 date  days
0 2019-01-06 12:00:00     5
1 2019-01-07 12:00:00     6
2 2019-01-08 12:00:00     7
3 2019-01-09 12:00:00     8
4 2019-01-10 12:00:00     9
5 2019-01-11 12:00:00    10
6 2019-01-12 12:00:00    11
7 2019-01-13 12:00:00    12
8 2019-01-14 12:00:00    13
9 2019-01-15 12:00:00    14