Задать вопрос
  • Как построить модель полиномиальной регрессии с несколькими независимыми переменными, используя Python?

    @dmshar
    Вариантов много.
    sklearn.preprocessing.PolynomialFeatures - это раз.
    Можно вручную преобразовать многомерную полиноминальную модель в многомерную линейную, а потом запустить
    sklearn.LinearRegression()
    Можно использовать более универсальный вариант
    scipy.optimize.curve_fit () , а поскольку регрессия - это по сути задача минимизации, то тут можно подгонять любую функцию. Более того, в scipy.optimize есть множество разных методов численной оптимизации, которые можно использовать для получения регрессионной модели в том числе.

    В ТensorFlow можно использовать
    GradientDescentOptimizer

    Но рекомендую сначала разобраться с задачей и терминологией. Ваша фраза
    "50 зависимых переменных " - поначалу ввергла меня в ступор.
    Ответ написан
    Комментировать
  • При использовании range( ), через N-ное количество циклов падает скорость?

    Vindicar
    @Vindicar
    RTFM!
    reversed(range(250))
    Зачем? Чем не устроил range(249, -1, -1)?

    Далее, ты и в up() и в down() в цикле создаёшь раз за разом один и тот же объект, а потом забываешь про него. Зачем устраивать разминку для сборщика мусора? Создай объект 1 раз и модифицируй его - либо в глобальной переменной, либо (лучше) в классе.
    Ответ написан
    Комментировать
  • При использовании range( ), через N-ное количество циклов падает скорость?

    @o5a
    Потому что в целом подход неправильный. Вы каждый цикл создаете новый объект и просто его отрисовываете поверх других, сдвигая каждый раз на новую величину.
    Вместо этого нужно 1 раз создать свой Circle и его уже потом двигать (и двигать соответственно не на i, а на одинаковое фиксированное значение (если ожидается равномерное движение).
    И наверное в цикл стоит добавить задержку в виде time.sleep(0.01)
    obj = Circle(Point(150, 20), 15)
    obj.setWidth(1)
    obj.draw(win)
    
    def down():
        for i in range(250):
            print (i)
    
            obj.setFill("yellow")
            obj.move(0, 1)
            time.sleep(0.01)
    Ответ написан
    Комментировать
  • Как проверять аргументы функции/метода?

    @MEDIOFF
    Python Developer
    Переписывайте функцию что бы она и None нормально отрабатывала. Так же, как по мне, если вы у вас функция может не принимать аргументы вовсе - то логичней это упаковать все в:
    def foo(*args, **kwargs):
        ...

    И возможно как раз с такой логикой вам легче будет все это устроить
    А вообще все сильно зависит от того что вы делаете внутри функции, я вам сказал лишь свои рекомендации не опираясь на требования, а это может внести коррективы
    Ответ написан
    6 комментариев
  • Как проверять аргументы функции/метода?

    Vindicar
    @Vindicar
    RTFM!
    Если аргумент None, означает ли это, что должно использоваться некоторое значение по умолчанию? Если да, то можно вынести if по этому аргументу отдельно, а дальше вести себя так, словно аргумент задан.

    Если же нет, то стоит спросить себя - а не слишком ли много эта функция на себя берёт? Не стоит ли её разделить на несколько?
    Ответ написан
    Комментировать
  • Почему иногда возникает ошибка Temporary failure in name resolution?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Рекомендую установить какой-нибудь простецкий локальный DNS-сервер, умеющий в кэширование, хотя бы тот же systemd-resolve. Тогда вероятность того, что резолв отвалится с ошибкой, существенно уменьшится.
    Ответ написан
    Комментировать
  • Почему пишет что в telebot нету атрибута message_handler?

    deepblack
    @deepblack Куратор тега Python
    Ты определись что у тебя установлено из библиотек:

    https://pypi.org/project/telebot/
    https://pypi.org/project/pyTelegramBotAPI/

    Судя по ошибке должен быть pyTelegramBotAPI, а установлен telebot.
    Сначала удали telebot и поставь pyTelegramBotAPI.
    Ответ написан
    Комментировать
  • Незнаю где ошибка? Из за неё не отправляется Embed?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Ошибка в каждой строчке, читайте, что в консоли вам пишет.
    1. Два одинаковых алиаса
    2. "Красивое" оформление кода лесенкой
    3. .message.author.mention ?
    4. Неправильный порядок аргументов
    Ответ написан
    3 комментария
  • Как делать импорт данных в ipynb?

    bucksbunny
    @bucksbunny Автор вопроса
    Гуру бытия, философ, прокрастинатор, авантюрист
    Решение проблемы:
    import import_ipynb
    import functions
    from functions import compute_surface
    testing = compute_surface(5)
    print (testing)
    #рабочий способ


    ещё пробовал вот такой способ:
    from ipynb.fs.full.functions import compute_surface


    и вот такой:
    import nbimporter
    from functions import compute_surface
    testing = compute_surface(5)
    print (testing)
    #рабочий способ
    Ответ написан
    Комментировать
  • Как преобразовать длинный float в строку?

    Vindicar
    @Vindicar
    RTFM!
    print(f'Число: {res:.6f}')
    Выведет тебе число с 6 знаками после запятой.
    Ответ написан
    Комментировать
  • Как улучшить производительность бота?

    DollyPapper
    @DollyPapper
    Во первых никто не пойдет в дискорд смотреть ваш код. Почитайте про правила задавания вопросов в интернете. Вы как минимум должны предоставить всю имеющуюся информацию сразу в вопросе, для того чтобы отвечающие могли дать ответ, а не тратить время на переход в какие-то дискорд чаты. Тем самым вы поможете и себе, потому что потенциальный человек который может дать вам ответ просто может не захотеть устанавливать дискорд.

    Что касается вашего вопроса:
    1) Самое банальное - увеличить мощность того железа где запускается бот.
    2) Использовать профайлер для определения места в коде, где происходит самый долгий момент вычислений. Можно использовать например это
    Сделайте профайлинг, посморите какая функция выполняется дольше всех (а может не функция, а сетевой запрос?) и с этим вопросом уже приходите опять, если сами не поймете почему данная функция выполняется так долго. И ради бога, не просите никого заходить к вам в дискорд.
    Ответ написан
    Комментировать
  • Как получить название трека из статуса ВК?

    WolfInChains
    @WolfInChains
    И название и автор
    audio = status["text"]

    Название и автор отдельно
    artist = status["audio"]["artist"]
    title = status["audio"]["title"]
    Ответ написан
    1 комментарий
  • Не пойму из-за чего ошибка?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Невалидный json значит, если режим r ничего не поменял.
    Что показывает https://jsonformatter.curiousconcept.com/ ?
    Ответ написан
    4 комментария
  • Как лучше делать return?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Ну во-первых - у вас немного разная логика функций.
    Первая процедура вылетит с ошибкой если передать значение не равное 123 или abc.
    result-то вы не проинициализировали...
    Вторая - отработает успешно, просто ничего не вернет.
    Если они будут задействованы в критической логике программы, - то у вас программа просто в ошибку свалится в первом случае. Во втором случае - не свалится, если возврат значения None предусмотрено дальнейшей программой (только не спутать ее с False)

    Во вторых - первая функция компилируется в байткод из 28 команд, а вторая - в 26. Лишнее присваивание дает лишние шаги программы. В одном месте - как минимум - 2 лишних бесполезных байт-кода, в другом, в третьем... И потом этот ничего не делающий байт-код просто греет процессор, внося свою толику в дело глобального потепления и ухудшения экологии на планете в целом... Так что лишний раз подумайте - есть ли особая в этом необходимость...

    Ну и в третьих - эти процедуры можно заменить более эффективными. Впрочем, - коллеги уже подсказали какими.
    Ответ написан
    Комментировать
  • Heroku сайт постоянно теряет логин?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Heroku
    Седой и строгий
    Это уже просто невыносимо! По нескольку раз в день один и тот же вопрос! Год за годом! Читайте документацию, лентяи, или хотя бы поиском пользуйтесь.
    Ответ написан
    1 комментарий
  • Как найти все строки под другой?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Ну если действительно такой формат:
    import csv, io, json
    
    data = '''X Y
    1 1
    2 2
    3 3
    4 4
    5 5'''
    f = io.StringIO(data)
    reader = csv.DictReader(f, delimiter=' ')
    json.dumps(list(reader))
    
    # '[{"X": "1", "Y": "1"}, {"X": "2", "Y": "2"}, {"X": "3", "Y": "3"}, {"X": "4", "Y": "4"}, {"X": "5", "Y": "5"}]'

    вместо использования io - в вашем случае можно просто читать из файла, разумеется.
    Ответ написан
    1 комментарий
  • Получаю письмо с помощью imaplib но возвращает не UTF-8 а UNICODE, как исправит?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    UTF-8 - это подмножество (точнее, способ представления) Unicode. Упорядочьте в голове соображения по этому поводу.
    Ответ написан
    Комментировать
  • Синтактическая ошибка sqlite3?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Каждую неделю пишу, что не стоит формировать запросы конкатенацией, интерполяцией и форматированием строк. Используйте prepared statements и будет вам счастье.
    Ответ написан
    3 комментария
  • Как исправить кодировку при отправке?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    Если в отправляемом тексте # присутствует что ли?

    requests.get(f"https://api.telegram.org/bot{bot_token}/sendMessage", {"chat_id": list_data[1], "text": msg})


    А вообще лучше слать POST запросами, чтобы не было тех же лимитов по длине URL

    requests.post(f"https://api.telegram.org/bot{bot_token}/sendMessage", data={"chat_id": list_data[1], "text": msg})
    Ответ написан
    3 комментария
  • (Питон, docx) Почему не получается заменить слово именно в таблице?

    @PNEroshevich
    Нужно обратить внимание на структуру файла, кроме параграфов в документе есть таблицы и колонтитулы.
    #Таблицы
    document.tables
    #Заголовки
    document.header
    #Подвалы
    document.footer


    Конечно же, таблицы имеет строки и ячейки
    Ответ написан
    Комментировать