【发布时间】:2017-09-10 01:58:27
【问题描述】:
我想遍历日期列表,以获得日期和之前日期之间的差异(例如 4/13 和 3/13 之间的差异)。
我正在寻找一个能够扫描几个日期的 for 循环
import pandas as pd
import numpy as np
raw_data = {'date' : pd.to_datetime(pd.Series(['2017-03-30','2017-03-31','2017-04-03','2017-04-04'])),
'age': [10,np.nan,50,30]}
df1 = pd.DataFrame(raw_data, columns = ['date','age'])
df1
输入数据
df2=df1.T
df2['new']=df2.iloc[:,3]-df2.iloc[:,2]
想要的结果:
raw_data = {'date' : pd.to_datetime(pd.Series(['2017-03-30','2017-03-31','2017-04-03','2017-04-04'])),'age': [10,np.nan,50,30],
'diff': [10,-10,50,-20]}
output = pd.DataFrame(raw_data, columns = ['date','age','diff'])
output
【问题讨论】:
-
我很困惑!
-
如果您将代码运行到 df2,您会看到“新”是 2017-04-04 和 2017-04-03 之间的年龄差异。我想做一个向后循环以回到以前的日期,在夫妻中,例如还通过循环比较 2017-03-31 和 2017-03-30
-
我真的很难理解你的问题。你能给出一个清晰的例子来说明你的输入、你的逻辑和你想要的输出吗?
-
我编辑了文本,放置了输入和所需的输出数据框。在输出中,“2017-04-04”行的 diff 值为 -20,即 2017-04-04 年龄与 2017-04-03 年龄之间的差异