|
import numpy as np |
|
import gradio as gr |
|
import os |
|
import pandas as pd |
|
from datasets import load_dataset |
|
|
|
Secret_token = os.getenv('token') |
|
|
|
dataset = load_dataset('FDSRashid/hadith_info',data_files = 'Basic_Edge_Information.csv', token = Secret_token, split = 'train') |
|
dataset2 = load_dataset('FDSRashid/hadith_info',data_files = 'masteredgecityratiosapplied_updated_with_ID_mapping_to_NEO4J.csv', token = Secret_token, split = 'train') |
|
edge_info = dataset.to_pandas() |
|
taraf_info = dataset2.to_pandas() |
|
cities = taraf_info['City'].unique().tolist() |
|
|
|
def subset_city_year( city , year ): |
|
edges = taraf_info[(taraf_info['Year'] == year) & (taraf_info['City'].isin(city))] |
|
return edges |
|
|
|
|
|
|
|
def get_narrators( city , year ): |
|
try: |
|
df = subset_city_year(city, year) |
|
narrators = edge_info[edge_info['Edge_ID'].isin(df['ID'])] |
|
return narrators['Edge_Name'].reset_index().rename(columns = {'Edge_Name': 'Teacher To Student'}) |
|
except Exception as e: |
|
return str(e) |
|
|
|
app = gr.Interface(get_narrators, |
|
[gr.Dropdown(choices = cities, value = ['المدينه', 'بغداد', 'كوفة', 'بصرة'], multiselect=True), |
|
gr.Slider(-11,800, value = 50, label = 'Year', info = 'Choose The Year to Retrieve Narrators'), |
|
], |
|
'dataframe', live = True) |
|
app.launch() |
|
|
|
|