• Как правильно оформить матрицу?

    @dmshar
    n, m= 19,19
    spiral = [[0] * m for _ in range(n)]
    c = 'x'
    wt=m
    hg=n
    i=1
    j=1
    while wt-i>=2:
        for k in range(i,wt-1):  
           spiral[j][k] = c 
        if hg-j>3:
            for l in range(j,hg-1):  
                spiral[l][wt-2] = c   
            for k in range(i,wt-2):  
                spiral[hg-2][k] = c 
            for l in range(j+2,hg-1):  
                spiral[l][i] = c 
            spiral[j+2][i+1] = c                    
        i+=2
        j+=2
        wt-=2
        hg-=2
    for i in range(n):  
        for j in range(m):
            print(str(spiral[i][j]).ljust(3), end=' ')
        print()


    Результат:
    0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
    0   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   0   
    0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   x   0   
    0   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   0   x   0   
    0   x   0   0   0   0   0   0   0   0   0   0   0   0   0   x   0   x   0   
    0   x   0   x   x   x   x   x   x   x   x   x   x   x   0   x   0   x   0   
    0   x   0   x   0   0   0   0   0   0   0   0   0   x   0   x   0   x   0   
    0   x   0   x   0   x   x   x   x   x   x   x   0   x   0   x   0   x   0   
    0   x   0   x   0   x   0   0   0   0   0   x   0   x   0   x   0   x   0   
    0   x   0   x   0   x   0   x   x   x   0   x   0   x   0   x   0   x   0   
    0   x   0   x   0   x   0   x   0   0   0   x   0   x   0   x   0   x   0   
    0   x   0   x   0   x   0   x   x   x   x   x   0   x   0   x   0   x   0   
    0   x   0   x   0   x   0   0   0   0   0   0   0   x   0   x   0   x   0   
    0   x   0   x   0   x   x   x   x   x   x   x   x   x   0   x   0   x   0   
    0   x   0   x   0   0   0   0   0   0   0   0   0   0   0   x   0   x   0   
    0   x   0   x   x   x   x   x   x   x   x   x   x   x   x   x   0   x   0   
    0   x   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   x   0   
    0   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   x   0   
    0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
    Ответ написан
    1 комментарий
  • Как заменить максимальный элемент в матрице на 0?

    @dmshar
    Вы перед тем как писать вопрос хотя-бы один раз перечитайте, что вы пишете и попытайтесь понять, что-же вы написали.

    1. "произвести сложение элементов этих массивов" Какое "сложение" ? Двух массивов между собой? Всех элементов внутри каждого из массивов? Элементов обоих массивов?
    Попробуйте свою мысль выразить четко.
    2. заменить максимальный элемент на «0» Максимальный элемент в массиве? В обоих массивов? Или - если это выражение трактовать как продолжение предыдущего - то максимальный из двух сумм?
    3. Но с последним у меня явно проблемы - вы хотите сказать, что с "первым" у вас проблем нет?
    Z = np.random.random((5,3))
    Y = np.random.random((3,2))
    Z[Z.argmax()] = 0
    Y[Y.argmax()] = 0
    Traceback (most recent call last):
      File "<ipython-input-2-4e17f53e0d83>", line 4, in <module>
        Y[Y.argmax()] = 0
    IndexError: index 4 is out of bounds for axis 0 with size 3

    Попробуйте все-таки внятно объяснить, что вам нужно.

    P.S. После попытки автора вопроса его переформулировать, стало немного яснее, хотя и не на 100%. Если я правильно понял, то вашИ задачИ решаЮтся вот так:

    Z = np.random.random((5,3))
    Y = np.random.random((3,2))
    sZ=Z.sum()
    sY=Y.sum()
    print(sZ, sY)
    Z[np.unravel_index(np.argmax(Z), Z.shape)]=0
    Y[np.unravel_index(np.argmax(Y), Y.shape)]=0


    И работает "всегда", а не "через раз", и результат вроде тот, что вы хотели
    Ответ написан
    Комментировать
  • С самых азов до этичного хакинга. С чего начать и как не сбиться с пути?

    @dmshar
    Добавлю к сказанному коллегами. Если человек не умеет самостоятельно находить ответы на вопросы, которые уже тысячу раз задавали, то заниматься хакингом ему мягко говоря еще слишком рано.
    Вот и совет выработался первый и наверное в вашем случае главным - сначала освойте этот навык, найдите ХОТЬ ОДИН источник сами. Без этого навыка - устойчивого и отработанного - с поводырём или без, но специалистом, тем более в хакинге - точно не стать. А второй совет - попробуйте самостоятельно освоить найденную информацию. Не в формате видосиков с ютюба, от которых можно лишь "загорется", а в формате настоящего, ежедневного, нудного, тяжелого и весьма не хайпового штудирования. Которое способно очень быстро и кардинально ваше "возгорание" потушить.
    И вот если после этого ваш пыл не угаснем (что весьма вероятно, учитывая в том числе вашу загруженность, а также то, что еще до всякого хакинга информатику вам придется поднимать "с нуля", что есть не тривиальной и не с налета решаемой задачей) - вот тогда и думать о том, что-бы искать ментора-тьютора, который согласиться опекать вас в дальнейшем.
    Ответ написан
    2 комментария
  • Как определить ключевые предикторы, если нет корреляции?

    @dmshar
    Давайте немного разберёмся.
    Ваше первое утверждение:
    осложнения (как зависимые параметры) зависят от предикторов, коими являются некие "вмешательства"
    Ваше второе утверждение:
    осложнения никак не коррелированы (т.е. нет связи а тем более нет зависимости ) с вмешательствами.
    Вам не кажется, что тут явное противоречия? Именно в ваших утверждениях. Потому как я понимаю, зависимость между осложнениями и вмешательствами в каком-то виде должны присутствовать. Иначе, что же мы хотим изучать?
    Смею предположить, что корреляция все-таки имеется, но вы ее не умеете фиксировать. Либо она слабо проявляется на отдельных предикторах, но имеется между некоторым набором предикторов и конкретным видом осложнений. И этого вы тоже скорее всего не проверяли. Не говоря уже о том, что эти самые предикторы (т.е. вмешательства) могут быть представлены либо в номинальной, либо в ранговой, либо даже в числовой шкале. И в зависимости от вариантов применяются различные методы выявления корреляции.
    В любом случае, при решении подобных проблем без углубления в семантику как правило получить вразумительного решения не удается. Не уверен, что форум - это то место, где такую дискуссию стоит затевать. Хотя некоторые базовые вопросы, если они у вас есть, мы можем попробовать обговорить и тут. Но начинать точно надо не со столь глобального и не имеющего общего ответа вопроса, как "Как определить ключевые предикторы".
    Ответ написан
    Комментировать
  • Как осуществить запись с микрофона и динамиков(уст-во вывода) в один файл?

    @dmshar
    Непонятно, что такое "писать с динамиков". Давайте разбираться.
    На динамик выводиться звук. Этот звук формируется тем устройством (компьютером), к которому эти динамики подключены. Компьютер выводит звук не "по щучьему велению", а потому, что он получает описание того, что выводить в виде соответствующего файла. Т.е информация в компьютере сначала присутствует, а уж потом выводится на динамик. Что вы хотите при этом "записывать"? Через какое устройство ввода?? Дублировать уже имеющийся файл? Зачем?

    А вот микрофон - другое дело. Это устройство ввода информацию. Он преобразует звук в сигнал, а сигнал записывает в файл. Поэтому вы его и можете "записать".

    Так что же на самом деле вы хотите сделать?

    P.S. Когда 50 лет назад я "писал концерт Битлз, который передавали ББС", я к динамику радиоприемника подносил микрофон магнитофона. Вы что, хотите повторить этот фокус на компьютере? Зачем?
    Ответ написан
  • Как активно менять размер окна mss numpy?

    @dmshar
    А что, у вас доступ к интернет уже отключили?
    Чем вас не устраивают ответы на ваш вопрос, которые приведены в документации к тому пакету, который вы решили пользовать?
    https://python-mss.readthedocs.io/examples.html
    Ответ написан
  • Как можно улучшить код?

    @dmshar
    Да что угодно может пойти не так. Вот задаю выражение "10+5/0" и получаю
    Enter your expression:"10+5/0"
    -1

    И как? Это "так" или "не так"?
    А вот это
    Enter your expression:"(10+5)/0"
    -1
    Ответ написан
  • Есть ли готовая нейросеть для подбора алгоритма формирования контрольной суммы?

    @dmshar
    А причет тут НЕЙРОСЕТЬ?? Расчет СRC абсолютно строго формализованная алгоритмическая задача. И ее реализаций - как и описаний в интернете - более чем много. И он-лайн, и не он-лайн
    https://moonback.ru/page/checksum
    https://soltau.ru/index.php/themes/dev/item/461-ka...
    и т.д.
    Ответ написан
  • Как научить каскад распознавать лица при разной освещенности?

    @dmshar
    Вопрос первый. А вы свою сеть обучали только на "хорошо освещенных" изображениях или на всех, в том числе и на "темных"?

    Вопрос второй. А что вас собственно удивляет?
    Вы никогда не обращали внимание на то, что даже люди слабо освещенные объекты распознают хуже, чем хорошо освещенные? Тем более перепутать лицо человека в темноте - это запросто.
    Было бы очень странно, если бы системы работали не так. Все что вы можете сделать - немного "подправить" изображение, поигравшись с их яркостью, насыщенностью и пр. А уж потом натравливать на них вашу нейросеть. Только не забудьте перед этим нейросетку обучить именно на предварительно обработанных фото.
    Совсем "безумная" идея - попробовать работать с фото, предварительно переведенными Grayscale.
    Указанные процедуры (кажется) можно сделать средствами OpenCV.
    Ответ написан
    Комментировать
  • Как исправить ошибку в присвоении переменной?

    @dmshar
    Господи, ну когда же народ научиться сперва включать мозги и самостоятельно искать ответы на такие простейшие вопросы, а уж потом писать вопросы на форум!
    Ну написано же, ясно, четко, ОДНОЗНАЧНО:
    price_1 = code['price']
    TypeError: string indices must be integers"

    Ну что же тут не ясно!!! В любом IDE в менеджере переменных сразу же видно, что
    в объекте code в момент выполнения строки
    price_1 = code['price']
    находится строковое значение '12345'. СТРОКОВОЕ!!!! А в строке индексом может быть исключительно int-значение. А вы пытаетесь вместо индекса указать опять-таки строку
    'price'

    Только не спрашиваете, как это исправить. Потому что понять логику вашей программы, в которой вы сначала в создаете объект
    code
    , копируя в него элемент словаря
    goods[name]
    , а потом этот же объект внутри цикла используете как объект - итератор цикла -
    for code in store:
    , т.е. перебирая объекты уже совершенно другого словаря
    store
    лично я не в силах. Чего вы хотели-то от такой дивной конструкции?

    Совет: сначала исправьте логику программы, а потом - может и синтаксис исправлять не придется.
    И еще совет. Откройте учебник по Python, найдите в нем главу про словари, потом посмотрите, как делать обход словаря. Это азы! И разберитесь, в чем разница между следующими тремя конструкциями:
    for val in dict.values()
    for key in dict.keys():
    for key in dict:
    Ответ написан
    1 комментарий
  • Как узнать есть ли лицо на фото?

    @dmshar
    Ответ написан
    Комментировать
  • Возможно ли реализовать распознавание говорящего?

    @dmshar
    Вопрос: "Возможно ли такое реализовать?"
    Ответ: "Возможно".
    Надеюсь, я удовлетворил ваш интерес.
    Ответ написан
    2 комментария
  • Как построить график с горизонтальными столбами?

    @dmshar
    Ну, например, вот так:
    import numpy as np
    import matplotlib.pyplot as plt
    x = np.arange(1, 8)
    y = np.random.randint(1, 20, size = 7)
    fig, ax = plt.subplots()
    bars=ax.barh(x, y)
    ax.bar_label(bars,label_type='center',fontsize=20)

    6280d4a518ed7954712287.png
    Ответ написан
    Комментировать
  • С чего продолжить изучение C++?

    @dmshar
    А у вас какая цель? Просто учить язык? Или все-таки учиться программировать на нем? Если первая - то берете любую книгу (когда-то Шилдт ценился, что сейчас не знаю) и зубрите, потом - вторую, третью.... ну в общем цель "учить язык" достигнута.
    А вот если хотите учиться программировать - то тогда берете какой-нибудь проект (выбираете себе по вкусу, что-бы интересно было) и пытаетесь его реализовать. Знаний для старта у вас уже вроде бы по приведенному списку должно хватить для любого вразумительного проекта. Когда натыкаетесь на что-то чего не знаете - лезете в книги и ищете в них (или в интернет) конкретный ответ. И так шаг за шагом - к поставленной цели "стать программистом".

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

    "Если да, то примерно сколько времени стоит уделять в день на учебу, а после на практику?" - если вы собрались учиться по будильнику а не по интересу, то тут все равно, сколько вы штанов протрете. И не "после на практику" - а наоборот "практику в первую очередь" (см. выше).

    Какие есть сайты для практики ЯП? - вы точно учили уже программирование? Или только формально книжки листали? Не понимаю, как можно хоть какое-то время действительно учить (!!) программирования и не знать ответа на такие вещи.

    И да, стоит ли учить дополнительный ЯП - стоит. Вот только те, кто действительно хочет стать программистом - те таких вопросов, как правило, не задают. А учат не потому что им так сказали, а потому что им интересно учить и второй язык, и третий. Но они сначала разбираются зачем именно им нужен тот-или иной язык, и его изучают, а не торгуются на тему "а какие у меня будут плюшки, если я изучу еще один язык".
    Ответ написан
  • Какие задачи в реальной жизни решает блокчейн, какое его практическое применение?

    @dmshar
    Три года прошло. Но в реальной жизни изменилось мало что.
    https://qna.habr.com/q/515731#answer_1193467
    Выводы делайте сами.
    Ответ написан
    Комментировать
  • Python библиотека numpy не правильно загружает массив. Как поправить?

    @dmshar
    Потому что dump - это не запись в файл.
    Не стоить использовать инструмент, не понимая как он работает.
    В любом учебнике по numpy (если его читать, конечно) можно найти:
    Запись массива в файл - метод np.save()
    Чтение массива из фала - метод np.load()
    Ну, может еще для работы с данными в текстовом формате -numpy.savetxt() и numpy.loadtxt()
    Хотите в бинарном виде - np.tofile() и np.fromfile()
    Вот и пользуйтесь инструментами по назначению на здоровье.
    Ответ написан
    Комментировать
  • Электронный дневник/календарь для самообучения?

    @dmshar
    Вы бы сосредоточились не на "ковырянии" Notion, а на изучение того, что вы поставили целью изучить. Толку точно было бы больше.
    Ответ написан
    2 комментария
  • Как работает генерация признаков Хаара?

    @dmshar
    Ответ написан
    Комментировать
  • Как производить прогнозирование временных рядов, если обучающая выборка - это множество нестационарых рядов с разными параметрами распределения?

    @dmshar
    Понятно, что нестационарные ряды предсказывать гораздо сложнее, чем нестационарные. Есть разные подходы. Начиная я классики - моделей, в которых присутсвует предварительная дифференциация значения ряда - та-же ARIMA, в частности.
    Другой подход - динамическая фрагментация ряда, когда вы делаете ищете такие фрагменты, внутри которых свойства ряда сохраняются. Модификации того подхода на стрим-модели ряда (те же методы change point detection) позволяют это делать в режиме реального времени.
    Если говорить об использовании в этой задачи методов моделирования - то работают они по принципу "скользящего окна", когда по выборке за последний период делается прогноз вперед, потом прогноз сравнивается с реально приходящими данными и по ошибке прогнозирования либо продолжают использовать старую модель, либо ее перестраивают. Дальше вопрос - какую модель вы используете. И какая природа данных, с которыми вы работаете - универсально "хороших" моделей нет по определению. Тем более, что и нестационарные ряды бывают очень и очень различными, и для каждой задачи надо искать-подбирать свой подход. Многие на этом кандидатские работы делают, кстати.

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

    @dmshar
    Так и не смог понять, как мог устареть алгоритм сортировки или поиска пути за лет 5... Тогда мне это показалось диким и, как оказалось, не зря.
    Не знаю, что вы поняли из того, что вам сказали загадочные "мидолами" с несколькими лет стажа, но вот что вам сказал выше уважаемый Wataru вы похоже таки и не поняли.
    Поясню. Алгоритмы учат не для того, что бы запомнить еще один "самый современный" алгоритм, - все равно завтра вы его забудете, а если надо будет применить - поищете в Гуугле. Алгоритмы УЧАТ для того, что бы приобрести навыки алгоритмического мышления. А ВЫСОКОквалифицированный разработчик тем и отличается от "мидола" с "несколькими годами опыта работы", что в первую очередь умеет проанализировать ЛЮБОЙ алгоритм, найти его ограничения, сильные и слабые стороны и пр., а не похвастаться, что он запомнил самый новейший алгоритм, который улучшает некоторые ранее известные на 0.00002%.

    Это как в музыке - сначала учатся играть гаммы (изучают язык программирования), потом учатся играть этюды - простые и незамысловатые пьесы, что-бы приобрести навыки, а уж потом играют сложные композиции. Так вот в программировании, изучение алгоритмов - это и есть этюды. Только тренируете вы не руки, как музыканты, а мозги. И не важно, по учебнику какого года вы это делаете.
    Ответ написан
    Комментировать