使用滑动窗口方法对数据进行子集

时间:2019-02-10 16:55:44

标签: r subset

我有一个640行乘50,000列的数据框。

我的目标是采用前200列,再逐步增加100列,以提取多达50,000列的数据以进行进一步分析。

示例:

数据集1:[640,1:200]

数据集2:[640,100:300]

重复直到50,000列

1 个答案:

答案 0 :(得分:1)

在此示例中,内置anscombe数据帧每次迭代前移2列,每次取4列。出于示例目的,此处的处理仅是对当前迭代中所考虑的列中的所有数据求和。它将使用参数1:4、3:6和5:8调用匿名函数。

    import numpy as np
    import cv2
    import math


    DCT = np.zeros((32,32))
    N=32
    for i in range(0,32):
        for j in range (0,32):
            if i==0:
                DCT[i,j]=np.sqrt(1/N)
            else:
                DCT[i,j]=np.sqrt(2/N)*math.cos((((2*j)+1)*(i*math.pi))/(2*N))
    im = cv2.imread("/home/ojj/PycharmProjects/graduatingProject/org/4k-wallpaper-architecture-bird-s-eye-view-1482778.jpg")
    image = cv2.resize(im, (32, 32))
    image_gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
    h, w = image_gray.shape[:2]
    vis = np.zeros((h,w), np.float32)
    vis[:h,:w]=image_gray
    manual = vis-128
    phase_1=np.dot(DCT,manual)
    phase_2=phase_1*DCT.T

print(np.array_equal(phase_2, cv2.dct(vis)))