Задать вопрос
  • Как нарисовать ёлку вложенным циклом?

    Maksim_64
    @Maksim_64
    Data Analyst
    height = int(input('Введите высоту '))
    for i in range(1,height+1):
        print(f'{"#"*(i*2-1):^{height * 2}}')
    Ответ написан
    Комментировать
  • Какой курс лучше для начала работы бизнес-аналитиком?

    Maksim_64
    @Maksim_64
    Data Analyst
    Вопросы: как мне уйти в бизнес-анализ?


    Первое на рынке труда, под данной позицией понимается, все что "захотелось, пониматься под бизнес аналитикой", конкретному работодателю. Если мы окунемся в теорию, очень упрощенно, то можно выделить два больших направления.

    Анализ прошлого этим в теории и должны заниматься бизнес-аналитик, его задача на основе прошлых данных дать понимание, как все работает.

    Прогнозирование будущего этим занимаются другие специалисты в зависимости от используемых инструментов.

    Какие курсы помогут мне получить знания/навыки для первого оффера?


    Курсы не котируются в IT все виды аналитиков, крайне сложны для входа, обычно действующий специалист, меняет направление.

    Насколько важно для трудоустройства техническое образование?


    Важно умение мыслить, как программист | аналитик | и т.д. Подобное мышление может быть заложено техническим образованием, а может быть и нет. Что значит мышление? Умение сводить проблему к математическому виду (для аналитиков), сама корочка играет незначительную роль.
    Ответ написан
    4 комментария
  • Почему возникает ошибка "length mismatch: expected axis has 3 elements, new values have 4 elements"?

    Maksim_64
    @Maksim_64
    Data Analyst
    мне вот интересно, это задания с курсов каких то безумных? Никто в реале не будет писать функции rename_columns или fillna_values. Реально, если это с курсов это ну совсем не куда не годится.

    Что касается этого безумного кода.

    исходный фрейм у тебя имеет 5 на самом деле 3 колонки, о чем и сказано в ошибке колонок а ты пытаешься установить, 4 вот в этой строке
    test_df.columns = ['Shop_1', 'Shop_2', 'Shop_3', 'Shop_4']

    пример того безумия, что происходит
    df = pd.DataFrame({
        'A':[1,2,3],
        'B':[4,5,6],
        'C':[6,7,8]
    })
    df.columns = ['AA','BB']
    Ответ написан
  • Как правильно тренировать навык аудирования в английском?

    Maksim_64
    @Maksim_64
    Data Analyst
    Ну вот смотри, я свободно говорю (коммуникация в англоязычных командах не вызывает никакого стресса) и пониманию английский, учился сам.

    1. Если бы меня попросили дать худший совет по улучшению различных навыков английского, то я бы сказал английский по сериалам.

    2. Начинать надо с историй есть простые истории типо English with stories, и добиваться полного их понимания, тренироваться пересказывать в слух на английском.

    3. Просто потреблять как можно английского контента, какие то блогеры говорят на английском, не обязательно обучающие английскому, просто по интересующей тебя тематике и т.д. Надо построить базу. Сейчас кстати c chatGPT можно пообщаться не много на английском.

    По итогу: Не надо пытаться like a native, это доступно тем кто проживает в англо-говорящей среде плюс старайся прокачивать навыки (а не навык), послушал поговорил сам с собой, важно повторять услышанное.
    Ответ написан
  • Существуют ли эталонно красиво написанные программы?

    Maksim_64
    @Maksim_64
    Data Analyst
    "Качественный код" - весьма размытое понятие. Есть код удовлетворяющий требованиям, где-то важна архитектура, где то алгоритмы, где то и то и другое, а где то надо быстрее выдать MVP, и качество кода не важно до поры до времени.
    Книги + личный опыт лучшее место.
    Ответ написан
    Комментировать
  • Что прочитать или как разобраться(грубо говоря с чего начать)?

    Maksim_64
    @Maksim_64
    Data Analyst
    Ищи все что связанно с transformers (архитектура deep learning).

    Взаимосвязь между словами это их тема и именно она позволила создать LLM, это именно, тогда был прорыв.

    Связь между словами именуется контекст. До трансформеров было например так это дополнительно зависит от архитектурного решения, что считать токеном: слово, предложение и т.д. То есть например 'Мама мыла раму', 'Мне нужно новую раму на велосипед', или что-нибудь из подвортни 'Керя ты в раму въехал'. слово 'раму' будет иметь один и тот же эмбеддинг. Так было раньше.

    Трансформеры это революция они процессируют токен паралельно, и на каждом своем слое потенциально возможно обновления эмбединга слова 'раму', как и других слов. Тем самым они начали понимать контекст, иными словами эмбеддинги базируется на контексте, а не на слове.

    В общем это ответ на оба вопроса. Гугли читай статьи изучай и пробуй transformers.
    Ответ написан
    4 комментария
  • Почему не получается сохранять графики plotly как картинки?

    Maksim_64
    @Maksim_64
    Data Analyst
    1. Код показывай что ты там делаешь.
    2. попробуй конвертировать datetime (столбец с временем) в строку.
    Ответ написан
    1 комментарий
  • Как убрать/перенести приложения установленные в conda venv по ошибке или как удалить/очистить base среду в conda?

    Maksim_64
    @Maksim_64
    Data Analyst
    в чем проблема сделать conda deactivate и затем remove (если он позволит удалить базовый). А в чем смысл создай другой активируй да и все.
    Ответ написан
    4 комментария
  • Как мне в Python добавить таблицу, учитывая формулу?

    Maksim_64
    @Maksim_64
    Data Analyst
    Совершенно непонятно формулируешь вопрос.

    1. Кого считать соседями? Если пункт А находится в радиусе или на расстоянии R от пункта B, то они соседи.

    2. Земля не плоская, твоя формула евклидовой дистанции при чем здесь? для расчета дистанций есть другие специальные формулы.

    3.
    Как мне в Python добавить таблицу, которая дублирует первую таблицу, добавляет данные из второй таблицы, учитывая формулу выше.
    Реляционные операции они происходят на основе ключа или ключей. На основании чего ты тут собрался собирать. Ты можешь найти потенциально соседей для любой взятой точки. Возникает вопрос а зачем тогда вообще две таблицы их можно просто слить в одну. Возможно связь есть, а ты о ней не рассказал.

    4. По итогу из того что есть задача видится как нахождения соседей для каждой точки датасета. Я бы брут форсем, такое не решал, а использовал бы базы с approximate nearest neighbor. Построить индексы O(n log(n)), запросы O(log(n) ), ну и вся задача для каждой точки датасета O(n log(n)).

    5. Используй подходящие базы ну или хотя бы geopandas. В этих случаях все инструменты уже есть.
    Ответ написан
    8 комментариев
  • Как декомпозировать задачи, с которыми ты впервые сталкиваешься?

    Maksim_64
    @Maksim_64
    Data Analyst
    Когда не в теме умные методики и словечки не работают, только методом проб и ошибок.
    Ответ написан
  • Является ли использование разных функций активации на выходном слое нейросети плохой идеей?

    Maksim_64
    @Maksim_64
    Data Analyst
    является ли использование разных функций активации на выходном слое нейросети плохой идеей?
    Не часто используется, по сути на выходном слое у тебя будет более одного вектора, обычно они разных типов получаются, соответсвенно для каждой тебе нужно будет, своя функция потери. И общая оценка будет подразумевать оценку каждой функции потери. И ее влияния на общую систему, возможно придется вводить дополнительные веса для функций потерь. В общем рекомендую разделить архитектуру.

    ДОПОЛНЕНИЕ к ответу
    У нас по всей видимости недопонимание наблюдается.
    1. Разные функции активации у скрытых слоев и выходного слоя дело обычное. Функция активации для выходного слоя определятся задачей которую ты решаешь, например хочу интерпретировать выходной вектор как вероятности ну и там сигмоид или софт max, или еще что то. В то время как например RELU была в скрытых. Это очень обычно и очень нормально. Когда ты говоришь о выходном слое ты спрашиваешь себя что и в каком виде мне будет выдавать.

    2. Ты упомянул, разные функции активации внутри выходного слоя, обычная архитектура это одна функция активации для выходного слоя. Потому что нейронка решает или задачу классификации или регрессии или еще что то. Но существуют редко архитектуры с более чем одной функции активации то есть твоя нейронка будет решать более одного типа задачи. Это редкая практика и она ведет к серьезным усложнениям, во время тренировки тебя появляется несколько функций потерь при это а как оптимизировать? А как иметь дело с оверфитиингом. и т.д.

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

    Maksim_64
    @Maksim_64
    Data Analyst
    import time
    l = [[392,556], [95,309], [207,192]]
    result = [item + [int(time.time() * 1000)] for item in l]
    Ответ написан
    3 комментария
  • Я и есть тот самый джун с 3мя годами опыта?

    Maksim_64
    @Maksim_64
    Data Analyst
    подавайся на любой грейд и любые требования к опыту, даже если там написано более 6 лет. Посмотри, как резюме проходит скрининг, посмотри как проходишь собесы, и там видно будет.
    Ответ написан
    Комментировать
  • Книги для изучения нейронных сетей на Python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Уже отвечал на этот вопрос, пока ничего лучше не вышло.
    Ответ написан
  • Как проверить наличие поля в JSON файле с помощью python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Объекты типа str не имеют метода get, такие методы характерны для маппингов (ключ-значение) напрмиер словарь.
    get("MiddleName") нужно проверять в другом месте, где ты ожидаешь встретить данный ключ.
    Ответ написан
    Комментировать
  • Как сравнить 2 df в Пандасе?

    Maksim_64
    @Maksim_64
    Data Analyst
    1. Если в колонке сборник (строки, числа, пропущенные значения). То это тип 'object'. Что означает python object что в свою очередь надо понимать буквально, массив состоит из python объектов.

    2. Операция сравнения двух объектов, не является однозначно трактованной операцией, в том числе и по этому в python существуют дандер методы которые позволяют переопределять операторы сравнения (вложить свой смысл что именно ты подразумеваешь по сравнением). Это я к тому что ты должен четко понимать что значит равны.

    pandas объекты поддерживают сравнение в его собственной интерпретации и поведении. Если этого достаточно
    то, все элементарно. Если сравнение используется для фильтра то такие колонки не хранят.
    df = pd.DataFrame({
        'A':[1,'a',2],
        'B':[1,'a',3]
    })
    
    df.loc[df['A'] == df['B']]

    Колонкам не обязательно быть из одного и того же фрейма, лишь бы размерность совпадала.
    Если же нужно особое понимание сравнения. То пишется функция которая принимает два массива на вход и возвращает массив булевых значений, затем этот массив используется в качестве маски, для осуществления выборки.
    Ответ написан
    Комментировать
  • По неподтверждённой информации, в нейросети Яндекса YALM-4 около 1.4 миллиардов параметров. В GPT-3 - 130 миллиардов. Насколько этот разрыв радикален?

    Maksim_64
    @Maksim_64
    Data Analyst
    Окей я не слежу за LLM от яндекса. https://github.com/yandex/YaLM-100B этому 2 года и там 100B или здесь
    https://huggingface.co/yandex тоже самое. YALM-4 вообще не слышал, и уж точно не поверю, что яндекс использует сегодня модель с 1.4B параметров.
    Ответ написан
    1 комментарий
  • Как сделать, чтобы не было возможности вызвать метод через инстанс?

    Maksim_64
    @Maksim_64
    Data Analyst
    Думаю простого способа нет в силу особенностей дизайна. Объект экземпляра класса, как и объект класса, оба имеют полный доступ к пространству имен объекта класса. По этому думаю решение довольно сложное и того не стоит.
    Ответ написан
    Комментировать
  • Как вставить строчки в exel через pandas?

    Maksim_64
    @Maksim_64
    Data Analyst
    Важно что форматы ячеек, шрифты и тд остались прежними. Это возможно сделать?
    с учетом этого pandas будет недостаточно, проще всего с использованием openpyxl это будет сделать.
    Ответ написан
    Комментировать
  • Как мне правильно развиваться в первую очередь как хороший программист, а потом уже как backend python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Я 2 года изучал Python (сам, без курсов).
    Думаю, что многого не знаю или упустил.

    Переходи к созданию проектов, они будут выявлять над чем работать, и формировать тебя как специалиста.

    Сейчас пытаюсь учить Flask, недавно закончил основы Git (очень хочу практики в команде).

    Опять таки делай проект, я бы не рекомендовал flask (fastapi вместо), но главное это сделать проект, git будет нужен если работаешь один, необязательно командой.

    В моих планах стать backend-разработчиком на Python.
    В данный момент я просто запутался, что мне изучать, что читать, где брать практику.

    Прекрасный выбор, после двух лет чтения, надо делать. Потом придет время опять почитаешь чего-нибудь.
    Ответ написан
    4 комментария