AIdeaText commited on
Commit
72d42eb
verified
1 Parent(s): 2c54508

Update modules/ui/ui.py

Browse files
Files changed (1) hide show
  1. modules/ui/ui.py +21 -38
modules/ui/ui.py CHANGED
@@ -989,62 +989,43 @@ def display_discourse_results(result, lang_code, t):
989
  st.warning(t.get('no_results', "No hay resultados disponibles."))
990
  return
991
 
992
- col1, col2 = st.columns(2)
 
 
 
 
 
 
 
 
993
 
994
  def process_key_concepts(key_concepts):
995
  df = pd.DataFrame(key_concepts, columns=['Concepto', 'Frecuencia'])
996
- df['Frecuencia'] = pd.to_numeric(df['Frecuencia'], errors='coerce')
997
- df['Frecuencia'] = df['Frecuencia'].fillna(0).astype(float)
998
  return df
999
 
1000
- with col1:
1001
- with st.expander(t.get('file_uploader1', "Documento 1"), expanded=True):
1002
- if 'graph1' in result:
1003
- st.pyplot(result['graph1'])
1004
- else:
1005
- st.warning(t.get('graph_not_available', "El gr谩fico no est谩 disponible."))
1006
- st.subheader(t.get('key_concepts', "Conceptos Clave"))
1007
- if 'key_concepts1' in result:
1008
- df1 = process_key_concepts(result['key_concepts1'])
1009
- st.table(df1)
1010
- else:
1011
- st.warning(t.get('concepts_not_available', "Los conceptos clave no est谩n disponibles."))
1012
-
1013
- with col2:
1014
- with st.expander(t.get('file_uploader2', "Documento 2"), expanded=True):
1015
- if 'graph2' in result:
1016
- st.pyplot(result['graph2'])
1017
- else:
1018
- st.warning(t.get('graph_not_available', "El gr谩fico no est谩 disponible."))
1019
- st.subheader(t.get('key_concepts', "Conceptos Clave"))
1020
- if 'key_concepts2' in result:
1021
- df2 = process_key_concepts(result['key_concepts2'])
1022
- st.table(df2)
1023
- else:
1024
- st.warning(t.get('concepts_not_available', "Los conceptos clave no est谩n disponibles."))
1025
-
1026
- # Comparaci贸n de conceptos clave
1027
- st.subheader(t.get('comparison', "Relaci贸n de conceptos entre ambos documentos"))
1028
  if 'key_concepts1' in result and 'key_concepts2' in result:
1029
  df1 = process_key_concepts(result['key_concepts1']).set_index('Concepto')
1030
  df2 = process_key_concepts(result['key_concepts2']).set_index('Concepto')
1031
 
 
1032
  df_comparison = pd.concat([df1, df2], axis=1, keys=[t.get('file_uploader1', "Documento 1"), t.get('file_uploader2', "Documento 2")])
1033
- df_comparison = df_comparison.fillna(0)
1034
 
1035
- # Verificar y convertir todas las columnas a float
1036
  for col in df_comparison.columns:
1037
- df_comparison[col] = pd.to_numeric(df_comparison[col], errors='coerce').fillna(0).astype(float)
1038
-
1039
- # Mostrar los tipos de datos de las columnas para depuraci贸n
1040
  st.write("Tipos de datos de las columnas:")
1041
  st.write(df_comparison.dtypes)
1042
 
1043
- # Mostrar los primeros registros para depuraci贸n
1044
  st.write("Primeros registros del DataFrame:")
1045
  st.write(df_comparison.head())
1046
 
1047
- # Intentar mostrar el DataFrame formateado
 
1048
  try:
1049
  st.dataframe(df_comparison.style.format("{:.2f}"), width=1000)
1050
  except Exception as e:
@@ -1054,6 +1035,8 @@ def display_discourse_results(result, lang_code, t):
1054
  else:
1055
  st.warning(t.get('comparison_not_available', "La comparaci贸n no est谩 disponible."))
1056
 
 
 
1057
  ##################################################################################################
1058
  #def display_saved_discourse_analysis(analysis_data):
1059
  # img_bytes = base64.b64decode(analysis_data['combined_graph'])
 
989
  st.warning(t.get('no_results', "No hay resultados disponibles."))
990
  return
991
 
992
+ def clean_and_convert(value):
993
+ if isinstance(value, (int, float)):
994
+ return float(value)
995
+ elif isinstance(value, str):
996
+ try:
997
+ return float(value.replace(',', '.'))
998
+ except ValueError:
999
+ return 0.0
1000
+ return 0.0
1001
 
1002
  def process_key_concepts(key_concepts):
1003
  df = pd.DataFrame(key_concepts, columns=['Concepto', 'Frecuencia'])
1004
+ df['Frecuencia'] = df['Frecuencia'].apply(clean_and_convert)
 
1005
  return df
1006
 
1007
+ # Procesar conceptos clave para ambos documentos
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1008
  if 'key_concepts1' in result and 'key_concepts2' in result:
1009
  df1 = process_key_concepts(result['key_concepts1']).set_index('Concepto')
1010
  df2 = process_key_concepts(result['key_concepts2']).set_index('Concepto')
1011
 
1012
+ # Crear DataFrame de comparaci贸n
1013
  df_comparison = pd.concat([df1, df2], axis=1, keys=[t.get('file_uploader1', "Documento 1"), t.get('file_uploader2', "Documento 2")])
1014
+ df_comparison = df_comparison.fillna(0.0)
1015
 
1016
+ # Asegurarse de que todas las columnas sean float
1017
  for col in df_comparison.columns:
1018
+ df_comparison[col] = df_comparison[col].astype(float)
1019
+
1020
+ # Mostrar informaci贸n de depuraci贸n
1021
  st.write("Tipos de datos de las columnas:")
1022
  st.write(df_comparison.dtypes)
1023
 
 
1024
  st.write("Primeros registros del DataFrame:")
1025
  st.write(df_comparison.head())
1026
 
1027
+ # Mostrar la tabla de comparaci贸n
1028
+ st.subheader(t.get('comparison', "Comparaci贸n de conceptos entre ambos documentos"))
1029
  try:
1030
  st.dataframe(df_comparison.style.format("{:.2f}"), width=1000)
1031
  except Exception as e:
 
1035
  else:
1036
  st.warning(t.get('comparison_not_available', "La comparaci贸n no est谩 disponible."))
1037
 
1038
+ # Aqu铆 puedes agregar el c贸digo para mostrar los gr谩ficos si es necesario
1039
+
1040
  ##################################################################################################
1041
  #def display_saved_discourse_analysis(analysis_data):
1042
  # img_bytes = base64.b64decode(analysis_data['combined_graph'])