Матрица рандомных чисел python

Заполнить элементы матрицы случайным образом целыми числами. Вывести элементы матрицы

В питоне недавно, и язык не очень нравится но практические сдавать надо.

1 2 3 4 5 6 7 8 9 10 11 12 13 14
import random def creatArray(): print('Input first index matrix: ') x = int(input()) print('Input second index matrix: ') y = int(input()) array = ([0]*x)*y for i in range (0,x-1): for j in range (0, y-1): array[i][j] = random.randint(0,100) return array print(creatArray())

таким образом хотел заполнить массив, но выдает ошибку на строке 14 и 11
‘TypeError: ‘int’ object does not support item assignment

Прошу обьясните в чем здесь проблема и помоги с решением с 3 заданиям (вывести номер столбцов. )

Матрицы: случайным образом заполнить разными целыми числами
Матрицу A(m,n) случайным образом заполнить разными целыми числами от 1 до m x n. #include.

Заполнить массив случайным образом целыми числами
Составить программу, по которой: 1) заполнить массив A (40) случайным образом целыми числами с.

Заполнить случайным образом целыми числами из диапазона [-250, 250] двумерный массив 7×10 элементов и вывести
Можете помочь написать код? Буду очень благодарен! — Заполнить случайным образом целыми числами.

Заполнить массив случайным образом целыми числами с диапазона
Составить программу, по которой: 1) заполнить массив A (40) случайным образом целыми числами с.

Случайным образом заполнить массив из 20 элементов целыми числами
Случайным образом заполнить массив из 20 элементов целыми числами от x (–50≤ x < 50).

Эксперт Python

Потому что в строке 8 создаёте кортеж (tuple) вместо списка.
Но если нужно для практики — рекомендую numpy для подобных дел.

Эксперт С++

import random def creatArray(): print('Input first index matrix: ') x = int(input()) print('Input second index matrix: ') y = int(input()) return [[random.randint(0,100) for i in range(x)] for j in range(y)] print(creatArray())
import random def creatArray(x, y): return [[random.randint(0,100) for i in range(x)] for j in range(y)] print(creatArray(int(input('Input first index matrix: ')), int(input('Input second index matrix: '))))

Спасибо всем, но нашел другой вариант который подошел мне

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
import random def creatArray(): r = 0 print('Input first index matrix: ') x = int(input()) print('Input second index matrix: ') y = int(input()) array = [] for i in range(x): array.append([]) for j in range(y): array[i].append(random.randint(0,100)) r += 1 return array print(creatArray())
import numpy as np random_matrix = np.matrix(np.random.randint(100, size=(int(input('rows=')), int(input('cols='))))) print(random_matrix)

Матрицу случайным образом заполнить разными целыми числами
Матрицу A(n,m) случайным образом заполнить разными целыми числами от одного до n*m.

Читайте также:  Css in one hour

Заполнить массив А (40) случайным образом целыми числами из диапазона [100, 999]a. заполнить массив А (40) случайным образом целыми числами из диапазона ; b. вывести элементы.

Заполнить случайным образом целыми числами из диапазона [-300; 500] двумерный массив
Опытные форумчане, помогите, пожалуйста, с задачкой. Составить программу на языке С++, в которой.

Источник

Как создать матрицу NumPy со случайными числами

Вы можете использовать следующие методы для создания матрицы NumPy со случайными числами:

Способ 1: создать матрицу случайных целых чисел NumPy

np.random.randint (low, high, (rows, columns)) 

Метод 2: создать матрицу NumPy случайных чисел с плавающей запятой

np.random.rand (rows, columns) 

В следующих примерах показано, как использовать каждый метод на практике.

Пример 1: создание матрицы случайных целых чисел NumPy

В следующем коде показано, как создать матрицу NumPy случайных значений в диапазоне от 0 до 20 с формой из 7 строк и 2 столбцов :

import numpy as np #create NumPy matrix of random integers np.random.randint (0, 20, (7, 2)) array([[ 3, 7], [17, 10], [ 0, 10], [13, 16], [ 6, 14], [ 8, 7], [ 9, 15]]) 

Обратите внимание, что каждое значение в матрице находится в диапазоне от 0 до 20, а окончательная форма матрицы — 7 строк и 2 столбца.

Пример 2: создание матрицы случайных чисел с плавающей запятой NumPy

В следующем коде показано, как создать матрицу NumPy со случайными значениями с плавающей точкой от 0 до 1 и формой из 7 столбцов и 2 строк:

import numpy as np #create NumPy matrix of random floats np.random.rand (7, 2) array([[0.64987774, 0.60099292], [0.13626106, 0.1859029 ], [0.77007972, 0.65179164], [0.33524707, 0.46201819], [0.1683 , 0.72960909], [0.76117417, 0.37212974], [0.18879731, 0.65723325]]) 

Результатом является матрица NumPy, которая содержит случайные значения с плавающей запятой от 0 до 1 в форме 7 строк и 2 столбцов.

Обратите внимание, что вы также можете использовать функцию NumPy round() для округления каждого числа с плавающей запятой до определенного числа знаков после запятой.

Например, следующий код показывает, как создать матрицу NumPy случайных чисел с плавающей запятой, каждое из которых округлено до 2 знаков после запятой:

import numpy as np #create NumPy matrix of random floats rounded to 2 decimal places np.round (np.random.rand (5, 2), 2) array([[0.37, 0.63], [0.51, 0.68], [0.23, 0.98], [0.62, 0.46], [0.02, 0.94]]) 

Примечание.Полную документацию по функции NumPy rand() можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные преобразования в Python:

Источник

How to create matrix of random numbers in Python – NumPy

This Python tutorial will focus on how to create a random matrix in Python. Here we will use NumPy library to create matrix of random numbers, thus each time we run our program we will get a random matrix.

We will create these following random matrix using the NumPy library.

  • Matrix with floating values
  • Random Matrix with Integer values
  • Random Matrix with a specific range of numbers
  • Matrix with desired size ( User can choose the number of rows and columns of the matrix )
Читайте также:  Import react with typescript

Create Matrix of Random Numbers in Python

We will create each and every kind of random matrix using NumPy library one by one with example. Let’s get started.

To perform this task you must have to import NumPy library. The below line will be used to import the library.

Note that np is not mandatory, you can use something else too. But it’s a better practice to use np.

Here are some other NumPy tutorials which you may like to read.

Random 1d array matrix using Python NumPy library

import numpy as np random_matrix_array = np.random.rand(3) print(random_matrix_array)
$ python codespeedy.py [0.13972036 0.58100399 0.62046278]

The elements of the array will be greater than zero and less than one.

2d matrix using np.random.rand()

import numpy as np random_matrix_array = np.random.rand(3, 4) print(random_matrix_array)
[[0.43189018 0.0903101 0.2664645 0.37512746] [0.63474244 0.91995859 0.84270619 0.97062349] [0.19307901 0.29623444 0.30945273 0.93585395]]

Create a 3D matrix of random numbers in Python

import numpy as np random_3d_matrix_array = np.random.rand(3, 4, 2) print(random_3d_matrix_array)
[[[0.55267301 0.95526256] [0.92689674 0.86599548] [0.87304883 0.32868337] [0.14190636 0.92375264]] [[0.22447201 0.00706627] [0.60944606 0.71169812] [0.371652 0.48960865] [0.77221671 0.30692933]] [[0.11237068 0.99828592] [0.1608211 0.47616887] [0.5892122 0.52634281] [0.10034398 0.36586993]]]

np.random.rand() to create random matrix

All the numbers we got from this np.random.rand() are random numbers from 0 to 1 uniformly distributed. You can also say the uniform probability between 0 and 1.

  • Parameters: It has parameter, only positive integers are allowed to define the dimension of the array. If you want to create a 1d array then use only one integer in the parameter. To make a 2d array matrix put 2 integers. The first integer is the number of rows and the 2nd one is the number of columns.
  • Return Type: ndarray

Create matrix of random integers in Python

In order to create a random matrix with integer elements in it we will use:

Here the default dtype is int so we don’t need to write it.

lowe_range and higher_range is int number we will give to set the range of random integers.

m,n is the size or shape of array matrix. m is the number of rows and n is the number of columns.

Here are a few examples of this with output:

Examples of np.random.randint() in Python

Matrix of random integers in a given range with specified size

import numpy as np random_matrix_array = np.random.randint(1,10,size=(3,4)) print(random_matrix_array)
$ python codespeedy.py [[8 4 7 1] [6 1 9 4] [4 3 3 1]]

Here the matrix is of 3*4 as we defined 3 and 4 in size=()

All the random elements are from 1 to 10 as we defined the lower range as 1 and higher as 10.

Matrix of 0 and 1 randomly

import numpy as np random_matrix_array = np.random.randint(2,size=(3,4)) print(random_matrix_array)

Note that: If you define the parameters as we defined in the above program, the first parameter will be considered as a higher range automatically. And the lower range will be set to zero by default.

Want to create a game with random numbers? follow the below tutorial,

Читайте также:  Import fonts css otf

Источник

How to create a matrix of random numbers with numpy in python ?

There are multiple solutions to create a matrix of random numbers in python. Let’s see some examples here:

Create a matrix of random integers

To create a matrix of random integers, a solution is to use numpy.random.randint

import numpy as np data = np.random.randint(-10,10,10) print(data) 

Another example with a matrix of size=(4,3)

data = np.random.randint(-10,10,size=(4,3)) print(data) 
[[ -3 -8 -9] [ 1 -5 -9] [-10 1 1] [ 6 -1 5]] 

Create always the same random numbers

Note: to make your work reproductible it is sometimes important to generate the same random numbers. To do that a solution is to use numpy.random.seed:

you can choose any seed number (It is common to use 42. To understand why go see: the «The Hitchhiker’s Guide to the Galaxy (travel guide)’s book»)

data = np.random.randint(-10,10,10) print(data) 

will always gives the same random numbers:

Create a matrix of random floats between 0 and 1

To create a matrix of random floats between 0 and 1, a solution is to use numpy.random.rand

data = np.random.rand(4,3) print(data) 
[[0.23277134 0.09060643 0.61838601] [0.38246199 0.98323089 0.46676289] [0.85994041 0.68030754 0.45049925] [0.01326496 0.94220176 0.56328822]] 

Note: to generate for example random floats between 0 and 100 just multiply the matrix by 100:

data = np.random.rand(4,3) * 100.0 print(data) 
[[38.54165025 1.59662522 23.08938256] [24.1025466 68.32635188 60.99966578] [83.31949117 17.33646535 39.10606076] [18.22360878 75.53614103 42.51558745]] 

Create a matrix of random floats between -1 and 1

To create a matrix of negative and positive random floats, a solution is to use numpy.random.uniform

data = np.random.uniform(-1,1, size=(6,2)) print(data) 
[[-0.58411667 0.13540066] [-0.93737342 0.68456955] [-0.10049173 -0.20969953] [ 0.85331773 0.45454399] [-0.34691846 0.14088795] [ 0.04166852 0.92234405]] 

Note: can be also used to generate random numbers for other range, for example [-10,5]:

data = np.random.uniform(-10,5, size=(4,3)) print(data) 
[[ 2.66800773 1.20980165 -1.90461801] [-1.19873252 4.47882961 -0.89448628] [-5.86001227 -5.55589741 -7.52099591] [-9.7654539 -3.64897779 -4.07677723]] 

Create a matrix of random numbers from a standard normal distribution

To generate a random numbers from a standard normal distribution ($\mu_0=0$ , $\sigma=1$)

How to generate random numbers from a normal (Gaussian) distribution in python ?

import numpy as np import matplotlib.pyplot as plt data = np.random.randn(100000) hx, hy, _ = plt.hist(data, bins=50, normed=1,color="lightblue") plt.ylim(0.0,max(hx)+0.05) plt.title('Generate random numbers \n from a standard normal distribution with python') plt.grid() plt.savefig("numpy_random_numbers_stantard_normal_distribution.png", bbox_inches='tight') plt.show() 

Create a matrix of random numbers from a normal distribution

If we know how to generate random numbers from a standard normal distribution, it is possible to generate random numbers from any normal distribution with the formula $$X = Z * \sigma + \mu$$ where Z is random numbers from a standard normal distribution, $\sigma$ the standard deviation $\mu$ the mean.

How to generate random numbers from a normal (Gaussian) distribution in python ?

import numpy as np import matplotlib.pyplot as plt mu = 10.0 sigma = 2.0 data = np.random.randn(100000) * sigma + mu hx, hy, _ = plt.hist(data, bins=50, normed=1,color="lightblue") plt.ylim(0.0,max(hx)+0.05) plt.title('Generate random numbers \n from a normal distribution with python') plt.grid() plt.savefig("numpy_random_numbers_normal_distribution.png", bbox_inches='tight') plt.show() 

References

Benjamin

Greetings, I am Ben! I completed my PhD in Atmospheric Science from the University of Lille, France. Subsequently, for 12 years I was employed at NASA as a Research Scientist focusing on Earth remote sensing. Presently, I work with NOAA concentrating on satellite-based Active Fire detection. Python, Machine Learning and Open Science are special areas of interest to me.

Skills

Источник

Оцените статью