Spaces:
Runtime error
Runtime error
File size: 1,146 Bytes
79e637a 727d361 79e637a 727d361 c735b62 fcfbd59 727d361 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
"""
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"]],
)
|