awais0300's picture
Update app.py
40b05c1 verified
import gradio as gr
import pandas as pd
# Function to compare datasets
def compare_datasets(reference_file, user_file):
# Read the Excel files
reference_df = pd.read_excel(reference_file.name)
user_df = pd.read_excel(user_file.name)
# Flatten both datasets to 1D arrays of numbers (ignoring NaN and other non-numeric data)
reference_numbers = reference_df.select_dtypes(include=['number']).values.flatten()
user_numbers = user_df.select_dtypes(include=['number']).values.flatten()
# Convert both arrays to sets for faster comparison
reference_set = set(reference_numbers)
user_set = set(user_numbers)
# Find the numbers in the user's dataset that are present in the reference dataset
common_numbers = reference_set.intersection(user_set)
missing_numbers = reference_set.difference(user_set)
# Prepare results
if common_numbers:
common_numbers_result = f"Found these numbers in the user's dataset: {', '.join(map(str, common_numbers))}"
else:
common_numbers_result = "No common numbers found."
if missing_numbers:
missing_numbers_result = f"Missing these numbers in the user's dataset: {', '.join(map(str, missing_numbers))}"
else:
missing_numbers_result = "All reference numbers are present."
return common_numbers_result, missing_numbers_result
# Create the Gradio interface
iface = gr.Interface(
fn=compare_datasets,
inputs=[
gr.File(label="Upload Your Reference Dataset (Excel)"),
gr.File(label="Upload User's Dataset (Excel)"),
],
outputs=[
gr.Textbox(label="Common Numbers Found"),
gr.Textbox(label="Missing Numbers"),
],
title="Excel Dataset Comparison Tool",
description="Upload your dataset and the user's dataset to check which numbers match and which are missing.",
)
# Launch the app
iface.launch()
import gradio as gr
import pandas as pd
# Function to compare datasets
def compare_datasets(reference_file, user_file):
# Read the Excel files
reference_df = pd.read_excel(reference_file.name)
user_df = pd.read_excel(user_file.name)
# Flatten both datasets to 1D arrays of numbers (ignoring NaN and other non-numeric data)
reference_numbers = reference_df.select_dtypes(include=['number']).values.flatten()
user_numbers = user_df.select_dtypes(include=['number']).values.flatten()
# Convert both arrays to sets for faster comparison
reference_set = set(reference_numbers)
user_set = set(user_numbers)
# Find the numbers in the user's dataset that are present in the reference dataset
common_numbers = reference_set.intersection(user_set)
missing_numbers = reference_set.difference(user_set)
# Prepare results
if common_numbers:
common_numbers_result = f"Found these numbers in the user's dataset: {', '.join(map(str, common_numbers))}"
else:
common_numbers_result = "No common numbers found."
if missing_numbers:
missing_numbers_result = f"Missing these numbers in the user's dataset: {', '.join(map(str, missing_numbers))}"
else:
missing_numbers_result = "All reference numbers are present."
return common_numbers_result, missing_numbers_result
# Create the Gradio interface
iface = gr.Interface(
fn=compare_datasets,
inputs=[
gr.File(label="Upload Your Reference Dataset (Excel)"),
gr.File(label="Upload User's Dataset (Excel)"),
],
outputs=[
gr.Textbox(label="Common Numbers Found"),
gr.Textbox(label="Missing Numbers"),
],
title="Excel Dataset Comparison Tool",
description="Upload your dataset and the user's dataset to check which numbers match and which are missing.",
)
# Launch the app
iface.launch()