使用熊猫套用功能可在滚动窗口中找到峰

时间:2019-11-28 10:56:22

标签: python-3.x scipy pandas-apply

我有一个数据帧,其中包含从200220192 columns的每日数据,其中一个是ts,由所有datesfitted.values由相应日期的ndvi数据组成。

我正在尝试使用scipy.signal.find_peakspandas.rolling()pandas.apply函数在滚动窗口中查找峰。即目标是采用可能长达365天的滚动窗口,并将元组内的峰值索引附加到列表中。多年200220032004,...我会[(peak1),(peak2,peak3),(peak4),....]。因此,2003年的相应峰值将是peak2peak3

我已经编写了以下代码,但不确定如何将系列(df['fitted.values])传递给apply函数。

此外,我不确定首先是否正确。有什么想法吗?

peak_list = []

def peaks (x,series_values):
    global peak_list
    peak_list.append(tuple(find_peaks(series_values)[0]))
    return (peak_list)

df['fitted.values'].rolling(window = 365).apply(lambda x: peaks(df['fitted.values]))

0 个答案:

没有答案