samyak152002's picture
Create app.py
2e1ae85 verified
import gradio as gr
import pandas as pd
import numpy as np
# Function to process the CSV file
def process_csv():
df = pd.read_csv("mitbih_train.csv", header=None)
M = df.values
X = M[:, :-1]
y = M[:, -1].astype(int)
C0 = np.argwhere(y == 0).flatten()
C1 = np.argwhere(y == 1).flatten()
C2 = np.argwhere(y == 2).flatten()
C3 = np.argwhere(y == 3).flatten()
C4 = np.argwhere(y == 4).flatten()
# Select sample indices
sample_data = {
"Cat_N": X[C0[0], :].tolist(),
"Cat_S": X[C1[0], :].tolist(),
"Cat_V": X[C2[0], :].tolist(),
"Cat_F": X[C3[0], :].tolist(),
"Cat_Q": X[C4[0], :].tolist(),
"time": (np.arange(0, 187) * 8 / 1000).tolist() # time axis
}
return sample_data
# Gradio Interface for visualizing ECG data
def get_ecg_data():
return process_csv()
# Set up Gradio Interface
iface = gr.Interface(
fn=get_ecg_data,
inputs=[],
outputs="json",
live=False
)
if __name__ == "__main__":
iface.launch(share=True)