um / code / build_iris.py
build_iris.py
Raw
import numpy as np
import os
import sys
import gzip
from tqdm import tqdm,trange
from partition import *
from file_io import *
from utils import *

from datetime import date, timedelta


def gen_test(ncd, nd, X_in, nss, normlen, nt, nm, neb, maxd):
    X = np.zeros((1, nt, nd + 1)).astype(int)
    Xs = np.zeros((1, ncd + 2, maxd + 1))
    idq = np.arange(nt, dtype='int')
    X[0, :, 0] += X_in[:]
    for d in range(len(nss)):
        X[0, :, d + 1] = idq % nss[d]
        idq = idq / nss[d]
    Xs[0, :ncd, :nd+1] = shrink(X[0, :, :], nm, nt)
    lens = len(nss)
    Xs[0, :, 1:lens + 1] = np.round((Xs[0, :, 1:lens + 1]) * (neb-1) / ([nn - 1 for nn in nss]))
    sf = normlen/float(sum(Xs[0, :, 0]))
    Xs[0, :ncd, 0] = np.round(np.multiply(Xs[0, :ncd, 0], sf)).astype(int)
    Xs[0, :ncd, 0] *= 1.0 / sum(Xs[0, :ncd, 0])

    Xs[:, :, 1:] = np.maximum(Xs[:, :, 1:], -1) + 1
    return Xs