Как умножить диагональные элементы друг другом, используя numpy? -- python поле с участием numpy поле с участием matrix пол Связанный проблема

How to multiply diagonal elements by each other using numpy?


0
vote

проблема

русский

Для целей этого упражнения давайте рассмотрим матрицу, где элемент <код> m_{i, j} дается правилом <код> m_{i, j} = i*j Если <код> i == j и <код > 0 else.

Есть ли простой «numpy» способ расчета такой матрицы без необходимости прибегать к <Код> if Заявления, проверяя для индексов?

Английский оригинал

For the purpose of this exercise, let's consider a matrix where the element m_{i, j} is given by the rule m_{i, j} = i*j if i == j and 0 else.

Is there an easy "numpy" way of calculating such a matrix without having to resort to if statements checking for the indices?

</div
        
   
   

Список ответов

1
 
vote
vote
Лучший ответ
 

Вы можете использовать функцию numpy <код> diag , чтобы построить диагональную матрицу, если вы даете ей предполагаемую диагональ как 1D массив в качестве ввода.

Так что вам просто нужно создать это, как <код> [i**2 for i in range (N)] с <код> N размерность матрицы.

 

You can use the numpy function diag to construct a diagonal matrix if you give it the intended diagonal as a 1D array as input.

So you just need to create that, like [i**2 for i in range (N)] with N the dimension of the matrix.

</div
 
 
 
 
0
 
vote

Вы можете использовать матрицу удостоверения личности, заданную gksudo0 , а затем умножить его на <код> gksudo1 Размерный вектор.

 

You could use the identity matrix given by numpy.identity(n) and then multiply it by a n dimensional vector.

</div
 
 
0
 
vote

Предполагая, что у вас есть квадратная матрица, вы можете сделать это:

 <Код> gksudo2  
 

Assuming you have a squared matrix, you can do this:

import numpy as np  ary = np.zeros((4, 4)) _ = [ary.__setitem__((i, i), i**2) for i in range(ary.shape[0])] print(ary) # array([[0., 0., 0., 0.], #        [0., 1., 0., 0.], #        [0., 0., 4., 0.], #        [0., 0., 0., 9.]]) 
</div
 
 

Связанный проблема

1  Python: Tkinter не отображает мой образ или интерфейс  ( Python tkinter not displaying my image or ui ) 
Я пытаюсь создать пользовательский интерфейс с изображением в правом верхнем углу. Вот мой код: <код> import tkinter as tk import urllib.request import base...

0  Как написать Pivot_Table в TXT файл Python  ( How to write the pivot table to txt file by python ) 
Я получаю pivot_table следующим образом: Есть места в таблице, Что я хочу написать на TXT: Как получить это? <код> WKWebView0 ...

48  Ошибка auth_user с django 1.8 и syncdb / migrate  ( Auth user error with django 1 8 and syncdb migrate ) 
При обновлении в Django 1.8 (с zc.buildout) и запуском SyncDB или миграция, я получаю это сообщение: <Код> django.db.utils.ProgrammingError: relation "auth_...

2  Pyproj Пакет Установка Proj_dir Переменная  ( Pyproj package installation proj dir variable ) 
Я пытаюсь установить <код> pyproj , хотя получаю <код> Proj executable not found. Please set PROJ_DIR variable ошибки. Команда <Код> $ pipenv install pyp...

0  Использование Pybind11 на MacBook Pro  ( Using pybind11 on macbook pro ) 
Я пытаюсь использовать Pybind11 на MacBook, и я пытаюсь сделать так, как было написано в https://pybind11.readtheDocs.io/en/stable/basics.html я установил C...

0  Почему мой скрипт Cron работает только один раз?  ( Why my cron script running just once ) 
Я пытаюсь запустить простой сценарий Python, используя команды cron. Я написал код, чтобы запускать свой скрипт Python в каждом 1 минуте и записывать вывод в ...

25  Найти сломанные симличины с Python  ( Find broken symlinks with python ) 
Если я звоню <код> os.stat() на сломанный <код> 9988777663 , python бросает <код> OSError исключение. Это делает его полезным для их поиска. Тем не менее, е...

0  Python получает глобальные модули вместо местных внутри виртуальны  ( Python is getting global modules instead of local ones inside of virtualenv ) 
Это мой первый раз, используя virtualenv и mysqldb, и я получаю странную ошибку. После того, как я настрою этот Virtualenv, я установил MySQLDB изнутри Virtua...

1  Используйте файл в качестве аргумента для функции, которая подсчитывает, создает счет для каждой буквы в текстовом файле  ( Use a file as an argument for a function that counts creates a count for each le ) 
Моя программа прямо сейчас работает только для первого символа в текстовом файле и итерации бесконечно. Например, если первая буква в текстовом файле D, прогр...

1  Cprofile принимает много памяти  ( Cprofile taking a lot of memory ) 
Я пытаюсь профилировать мой проект в Python, но у меня заканчивается память. Сам мой проект довольно памяти, но даже пробеги полумана с возможностью погибан...

2  Spotipy Authentication не возвращает токен?  ( Spotipy authentication not returning token ) 
Все подходящие люди, я прочитал всю документацию, которую я могу найти в методах аутентификации Spotipy, и я собрал небольшой кусок кода, чтобы проверить его,...

3  Compile United с кодом ошибки 1 в / tmp / pip_build_root / uwsgi  ( Compile failed with error code 1 in tmp pip build root uwsgi ) 
Я пытаюсь следить за руководством в http: // uwsgi -docs.readtheDocks.org/en/latest/tutorials/django_and_nginx.html . Я получил все, что все работает TOHTTP:...

2  Heroku Установить Letsencrypt - SU: ДОЛЖЕН БУДЬТ  ( Heroku install letsencrypt su must be run from a terminal ) 
Я пытаюсь создать сертификат SSL для Мой сайт , чтобы получить зеленый замок. . Во время передачи, как это сделать (никогда не делал ничего с сертификатами ...

12  Редактировать с помощью контекстного меню IDLE (Python GUI) в Windows & NBSP; 7  ( Edit with idle python gui context menu on windowsnbsp7 ) 
Под Windows XP у меня есть контекстное введение меню «Редактировать с простым» для python исходные файлы. Я пытался сделать эту работу под Windows 7 (32-бит...

1  dataframe или sqlctx (sqlcontext) сгенерировали "попытка вызвать пакет" ошибка  ( Dataframe or sqlctx sqlcontext generated trying to call a package error ) 
Я использую Spark 1.3.1. В Pyspark я создал Dataframe от RDD и зарегистрировал схему, что-то вроде этого: <код> dataLen=sqlCtx.createDataFrame(myrdd, ["id",...




© 2021 www.qaru.top All Rights Reserved. Q&A House все права защищены


Licensed under cc by-sa 3.0 with attribution required.