File size: 1,243 Bytes
f1953a3
 
 
 
c60844b
f1953a3
bc71c73
 
 
 
 
 
 
a567382
bc71c73
 
a567382
c60844b
 
bc71c73
f1953a3
 
605c319
f1953a3
 
 
c60844b
3a54228
f1953a3
 
 
 
c60844b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import gradio as gr
import pandas as pd
import re

def calculate_correlations(file_obj):
    try:
        # Попробуем разные разделители
        for sep in [',', ';', '\t']:
            try:
                df = pd.read_csv(file_obj.name, sep=sep, encoding='utf-8')
                break  # Выходим из цикла, если чтение успешно
            except pd.errors.ParserError:
                pass  # Пробуем следующий разделитель

        if 'df' not in locals(): # Проверяем, был ли создан df
            return {"error": "Ошибка парсинга файла. Не удалось прочитать CSV с разными разделителями."}



        # ... (дальнейший код - без изменений)

    except Exception as e:
        return {"error": f"Неизвестная ошибка: {e}"}

iface = gr.Interface(
    fn=calculate_correlations,
    inputs=gr.File(type="filepath", label="CSV файл с отзывами"),
    outputs=gr.JSON(),
    title="Корреляционный анализ отзывов",
    description="Загрузите CSV файл с отзывами."
)

iface.launch()