albhu commited on
Commit
56785c7
·
verified ·
1 Parent(s): 129c364

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -28
app.py CHANGED
@@ -1,8 +1,7 @@
1
  import streamlit as st
2
  import pandas as pd
3
  from transformers import pipeline
4
- from datetime import datetime, timedelta
5
- import plotly.express as px
6
 
7
  # Oldal konfiguráció
8
  st.set_page_config(page_title="Orvosi Ügyeleti Beosztás Generáló", layout="wide")
@@ -24,9 +23,16 @@ def parse_date(value):
24
  return datetime.strptime(value, "%d %B %Y")
25
  parsed_date = datetime.strptime(value, "%d %B")
26
  return parsed_date.replace(year=2025)
27
- except ValueError:
28
  return None
29
 
 
 
 
 
 
 
 
30
  # Adatok Excel exportálása
31
  @st.cache_data
32
  def convert_to_excel(data):
@@ -52,20 +58,14 @@ if uploaded_file:
52
  relevant_data = []
53
  for sheet in sheet_names:
54
  df = excel_data.parse(sheet)
55
- st.write(f"Elemzés a '{sheet}' munkalapon:")
56
- st.dataframe(df.head())
57
 
58
- oszlopok = df.columns.str.lower()
59
- if any("név" in col for col in oszlopok):
60
  st.write(f"Releváns adat található a '{sheet}' munkalapon.")
61
  relevant_data.append(df)
62
  else:
63
- st.warning(f"A '{sheet}' munkalap nem tartalmaz automatikusan felismerhető adatokat.")
64
- name_column = st.selectbox(f"Válaszd ki a 'Név' oszlopot a '{sheet}' munkalapon:", df.columns)
65
- availability_column = st.selectbox(f"Válaszd ki az 'Elérhetőség' oszlopot a '{sheet}' munkalapon:", df.columns)
66
- restriction_column = st.selectbox(f"Válaszd ki a 'Korlátozások' oszlopot a '{sheet}' munkalapon:", df.columns)
67
- df.rename(columns={name_column: "Név", availability_column: "Elérhetőség", restriction_column: "Korlátozások"}, inplace=True)
68
- relevant_data.append(df)
69
 
70
  # Összesített adatok
71
  if relevant_data:
@@ -114,21 +114,6 @@ if uploaded_file:
114
  st.write("Generált Ügyeleti Beosztás:")
115
  st.dataframe(beosztas_df)
116
 
117
- # Naptár nézet generálása Plotly segítségével
118
- st.write("Naptár Nézet:")
119
- beosztas_df["Nap"] = pd.to_datetime(beosztas_df["Nap"])
120
- fig = px.timeline(
121
- beosztas_df,
122
- x_start="Nap",
123
- x_end="Nap",
124
- y="Orvos",
125
- title="Ügyeleti Beosztás",
126
- color="Orvos",
127
- labels={"Nap": "Dátum", "Orvos": "Orvos"}
128
- )
129
- fig.update_yaxes(categoryorder="total ascending")
130
- st.plotly_chart(fig)
131
-
132
  # Exportálás
133
  excel_data = convert_to_excel(beosztas_df)
134
  st.download_button(
 
1
  import streamlit as st
2
  import pandas as pd
3
  from transformers import pipeline
4
+ from datetime import datetime
 
5
 
6
  # Oldal konfiguráció
7
  st.set_page_config(page_title="Orvosi Ügyeleti Beosztás Generáló", layout="wide")
 
23
  return datetime.strptime(value, "%d %B %Y")
24
  parsed_date = datetime.strptime(value, "%d %B")
25
  return parsed_date.replace(year=2025)
26
+ except (ValueError, TypeError):
27
  return None
28
 
29
+ # Adatok tisztítása és egységesítése
30
+ def clean_data(df):
31
+ # Oszlopok egységesítése
32
+ df.columns = df.columns.str.strip().str.lower()
33
+ df = df.rename(columns={"név": "Név", "elérhetőség": "Elérhetőség", "korlátozások": "Korlátozások"})
34
+ return df
35
+
36
  # Adatok Excel exportálása
37
  @st.cache_data
38
  def convert_to_excel(data):
 
58
  relevant_data = []
59
  for sheet in sheet_names:
60
  df = excel_data.parse(sheet)
61
+ df = clean_data(df) # Adatok tisztítása és egységesítése
 
62
 
63
+ # Ellenőrzés, hogy tartalmaz-e releváns oszlopokat
64
+ if "Név" in df.columns and "Elérhetőség" in df.columns:
65
  st.write(f"Releváns adat található a '{sheet}' munkalapon.")
66
  relevant_data.append(df)
67
  else:
68
+ st.warning(f"A '{sheet}' munkalap nem tartalmaz releváns adatokat.")
 
 
 
 
 
69
 
70
  # Összesített adatok
71
  if relevant_data:
 
114
  st.write("Generált Ügyeleti Beosztás:")
115
  st.dataframe(beosztas_df)
116
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
  # Exportálás
118
  excel_data = convert_to_excel(beosztas_df)
119
  st.download_button(