awais0300 commited on
Commit
40b05c1
·
verified ·
1 Parent(s): 7d3aae3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +102 -0
app.py CHANGED
@@ -0,0 +1,102 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import pandas as pd
3
+
4
+ # Function to compare datasets
5
+ def compare_datasets(reference_file, user_file):
6
+ # Read the Excel files
7
+ reference_df = pd.read_excel(reference_file.name)
8
+ user_df = pd.read_excel(user_file.name)
9
+
10
+ # Flatten both datasets to 1D arrays of numbers (ignoring NaN and other non-numeric data)
11
+ reference_numbers = reference_df.select_dtypes(include=['number']).values.flatten()
12
+ user_numbers = user_df.select_dtypes(include=['number']).values.flatten()
13
+
14
+ # Convert both arrays to sets for faster comparison
15
+ reference_set = set(reference_numbers)
16
+ user_set = set(user_numbers)
17
+
18
+ # Find the numbers in the user's dataset that are present in the reference dataset
19
+ common_numbers = reference_set.intersection(user_set)
20
+ missing_numbers = reference_set.difference(user_set)
21
+
22
+ # Prepare results
23
+ if common_numbers:
24
+ common_numbers_result = f"Found these numbers in the user's dataset: {', '.join(map(str, common_numbers))}"
25
+ else:
26
+ common_numbers_result = "No common numbers found."
27
+
28
+ if missing_numbers:
29
+ missing_numbers_result = f"Missing these numbers in the user's dataset: {', '.join(map(str, missing_numbers))}"
30
+ else:
31
+ missing_numbers_result = "All reference numbers are present."
32
+
33
+ return common_numbers_result, missing_numbers_result
34
+
35
+ # Create the Gradio interface
36
+ iface = gr.Interface(
37
+ fn=compare_datasets,
38
+ inputs=[
39
+ gr.File(label="Upload Your Reference Dataset (Excel)"),
40
+ gr.File(label="Upload User's Dataset (Excel)"),
41
+ ],
42
+ outputs=[
43
+ gr.Textbox(label="Common Numbers Found"),
44
+ gr.Textbox(label="Missing Numbers"),
45
+ ],
46
+ title="Excel Dataset Comparison Tool",
47
+ description="Upload your dataset and the user's dataset to check which numbers match and which are missing.",
48
+ )
49
+
50
+ # Launch the app
51
+ iface.launch()
52
+ import gradio as gr
53
+ import pandas as pd
54
+
55
+ # Function to compare datasets
56
+ def compare_datasets(reference_file, user_file):
57
+ # Read the Excel files
58
+ reference_df = pd.read_excel(reference_file.name)
59
+ user_df = pd.read_excel(user_file.name)
60
+
61
+ # Flatten both datasets to 1D arrays of numbers (ignoring NaN and other non-numeric data)
62
+ reference_numbers = reference_df.select_dtypes(include=['number']).values.flatten()
63
+ user_numbers = user_df.select_dtypes(include=['number']).values.flatten()
64
+
65
+ # Convert both arrays to sets for faster comparison
66
+ reference_set = set(reference_numbers)
67
+ user_set = set(user_numbers)
68
+
69
+ # Find the numbers in the user's dataset that are present in the reference dataset
70
+ common_numbers = reference_set.intersection(user_set)
71
+ missing_numbers = reference_set.difference(user_set)
72
+
73
+ # Prepare results
74
+ if common_numbers:
75
+ common_numbers_result = f"Found these numbers in the user's dataset: {', '.join(map(str, common_numbers))}"
76
+ else:
77
+ common_numbers_result = "No common numbers found."
78
+
79
+ if missing_numbers:
80
+ missing_numbers_result = f"Missing these numbers in the user's dataset: {', '.join(map(str, missing_numbers))}"
81
+ else:
82
+ missing_numbers_result = "All reference numbers are present."
83
+
84
+ return common_numbers_result, missing_numbers_result
85
+
86
+ # Create the Gradio interface
87
+ iface = gr.Interface(
88
+ fn=compare_datasets,
89
+ inputs=[
90
+ gr.File(label="Upload Your Reference Dataset (Excel)"),
91
+ gr.File(label="Upload User's Dataset (Excel)"),
92
+ ],
93
+ outputs=[
94
+ gr.Textbox(label="Common Numbers Found"),
95
+ gr.Textbox(label="Missing Numbers"),
96
+ ],
97
+ title="Excel Dataset Comparison Tool",
98
+ description="Upload your dataset and the user's dataset to check which numbers match and which are missing.",
99
+ )
100
+
101
+ # Launch the app
102
+ iface.launch()