我有以下数据框:
Month Col_1 Col_2
1 0,121 0,123
2 0,231 0,356
3 0,150 0,156
4 0,264 0,426
...
我需要对此进行重新采样以达到每周分辨率并在各点之间进行插值。后者,内插是直接的。另一方面,至少对于我来说,重新索引部分有些棘手。
如果我使用DataFrame.reindex()方法,它将仅擦除数据框中的所有条目。我尝试通过使用.loc()在每个连续的月之间创建新的“ NaN”条目来手动执行此操作,但是此方法将覆盖我已经拥有的条目。
有什么提示怎么做吗?谢谢!
我选择了一个开始日期2009-12-31
。
要开始resample
工作,您需要一个pd.DateTimeIndex
。
start_date = pd.to_datetime('2009-12-31')
df.Month = df.Month.apply(lambda x: start_date + pd.offsets.MonthEnd(x))
df = df.set_index('Month')
df.resample('W').interpolate()
from StringIO import StringIO
import pandas as pd
text = """Month Col_1 Col_2
1 0,121 0,123
2 0,231 0,356
3 0,150 0,156
4 0,264 0,426"""
df = pd.read_csv(StringIO(text), decimal=',', delim_whitespace=True)
start_date = pd.to_datetime('2009-12-31')
df.Month = df.Month.apply(lambda x: start_date + pd.offsets.MonthEnd(x))
df = df.set_index('Month')
df.resample('W').interpolate()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句