Spaces:
Runtime error
Runtime error
""" | |
Subtract one vector from another of the same dimension using NumPy. | |
""" | |
import numpy as np | |
from typing import List, Union | |
import gradio as gr | |
from maths.vectors.utils import parse_vector, format_output | |
Vector = Union[List[float], np.ndarray] | |
def vector_subtract(vector1: Vector, vector2: Vector) -> np.ndarray: | |
v1 = np.array(vector1) | |
v2 = np.array(vector2) | |
if v1.shape != v2.shape: | |
raise ValueError("Vectors must have the same dimensions for subtraction.") | |
return np.subtract(v1, v2) | |
vector_subtract_interface = gr.Interface( | |
fn=lambda v1_str, v2_str: format_output(vector_subtract(parse_vector(v1_str), parse_vector(v2_str))), | |
inputs=[ | |
gr.Textbox(label="Vector 1 (Minuend)", placeholder="e.g., [4,5,6]"), | |
gr.Textbox(label="Vector 2 (Subtrahend)", placeholder="e.g., [1,2,3]") | |
], | |
outputs=gr.Textbox(label="Resulting Vector"), | |
title="Vector Subtraction", | |
description="Subtracts the second vector from the first. Both must have the same dimension.\n\nExample:\nInput: [4,5,6] and [1,2,3]\nOutput: [3.0, 3.0, 3.0]", | |
examples=[["[4,5,6]", "[1,2,3]"], ["4,5,6", "1,2,3"]], | |
) | |