Ejemplo n.º 1
0
def range_in(x, y, p):
    if is_scalar(x) or not is_scalar(y):
        return x
    else:
        splitY = int((x.shape[0] - 1) * (y + 1) / 2.0)
        splitP = int((x.shape[0] - 1) * (p + 1) / 2.0)
        start = min(splitY, splitP)
        end = max(splitY, splitP)
        return np.copy(x[start:end + 1])
Ejemplo n.º 2
0
def differences(x, y, p):
    if is_scalar(x):
        return x
    else:
        z = x.flatten()
        if z.size > 2:
            return np.copy(np.diff(x.flatten()))
        else:
            return z
Ejemplo n.º 3
0
 def test_pass_through(self):
     inp = 1
     exp = True
     act = supp.is_scalar(inp)
     self.assertEqual(exp, act)
     inp = np.array([1])
     exp = False
     act = supp.is_scalar(inp)
     self.assertEqual(exp, act)
     inp = np.array([[1], [2]])
     exp = False
     act = supp.is_scalar(inp)
     self.assertEqual(exp, act)
     inp = np.array([[1], [2]])
     exp = False
     act = supp.is_scalar(inp)
     self.assertEqual(exp, act)
     inp = np.array([1, 2, 3])
     exp = False
     act = supp.is_scalar(inp)
     self.assertEqual(exp, act)
Ejemplo n.º 4
0
def f_last(x, y, p):
    if is_scalar(x):
        return x
    else:
        z = x.flatten()
        return z[len(z) - 1]
Ejemplo n.º 5
0
def f_first(x, y, p):
    if is_scalar(x):
        return x
    else:
        return x.flatten()[0]
Ejemplo n.º 6
0
def vectorize(x, y, p):
    if is_scalar(x):
        return x
    else:
        return np.copy(x.flatten())
Ejemplo n.º 7
0
def index_p(x, y, p):
    if is_scalar(x):
        return x
    else:
        splitP = int((x.shape[0] - 1) * (p + 1) / 2.0)
        return np.copy(x[splitP])
Ejemplo n.º 8
0
def index_y(x, y, p):
    if is_scalar(x) or not is_scalar(y):
        return x
    else:
        splitY = int((x.shape[0] - 1) * (y + 1) / 2.0)
        return np.copy(x[splitY])
Ejemplo n.º 9
0
def ones(x, y, p):
    if is_scalar(x):
        return np.array([1])
    else:
        return np.ones(x.shape)
Ejemplo n.º 10
0
def zeros(x, y, p):
    if is_scalar(x):
        return np.array([0])
    else:
        return np.zeros(x.shape)
Ejemplo n.º 11
0
def constvectord(x, y, p):
    if is_scalar(x):
        return np.array([p])
    else:
        return np.full(x.shape, p)
Ejemplo n.º 12
0
def split_after(x, y, p):
    if is_scalar(x):
        return x
    else:
        splitIndex = int((x.shape[0] - 1) * (p + 1) / 2.0)
        return np.copy(x[splitIndex:])
Ejemplo n.º 13
0
def vec_from_double(x, y, p):
    if is_scalar(x):
        return np.array([x])
    else:
        return x
Ejemplo n.º 14
0
def transpose(x, y, p):
    if is_scalar(x):
        return x
    else:
        return np.transpose(x)
Ejemplo n.º 15
0
def rotate(x, y, p):
    if is_scalar(x):
        return x
    else:
        return np.roll(x, int(np.ceil(p)))
Ejemplo n.º 16
0
def split_before(x, y, p):
    if is_scalar(x):
        return x
    else:
        splitIndex = int((x.shape[0] - 1) * (p + 1) / 2.0)
        return np.copy(x[:splitIndex + 1])