【问题标题】:Using python to add random Matrices with Numpy使用 python 使用 Numpy 添加随机矩阵
【发布时间】:2017-04-16 06:52:02
【问题描述】:

所以我需要在 python 中添加随机矩阵。我有这个代码来生成一个随机矩阵:

import numpy as np 
import random

def generate_matrix(m, n):
  A = np.random.randint(100, size=(m, n))
  B = np.random.randint(100, size=(m, n))
  return A

但是,我需要创建一个函数,以便可以添加两个随机矩阵。 我所拥有的只是启动功能,我只是卡住了。问题是用户需要能够创建每个矩阵的大小。我试图编写一个代码,但是我只能收集一个两个矩阵相同的代码,这不是我需要的。

def add(A, B):

【问题讨论】:

  • 你试过A + B吗?
  • 你尝试生成随机的 n 和 m 吗?这很简单,就像你没有尝试过任何真正的东西一样。
  • 是的,我试过了,但它不起作用,问题是用户需要能够输入每个矩阵大小的值。
  • 请告诉我们您是如何调用该函数的以及它是如何不起作用的(您期望什么以及发生了什么)。另请注意,您仅从第一个函数返回矩阵 A。
  • 我将其发布为答案。

标签: python arrays numpy matrix random


【解决方案1】:

def generate_matrix(m, n):
A = np.random.randint(100, size=(m, n))
B = np.random.randint(100, size=(m, n))
return A + B

这就是我所拥有的,但我的格式是错误的,它只添加了相同的长度矩阵。

【讨论】:

  • 这不是答案,请编辑您的问题以将其包含在内。
  • 如何定义两个形状不同的矩阵相加?
【解决方案2】:

您有两个矩阵(它们的大小必须相同才能使用矩阵求和)。 只要您让用户定义大小(m 和 n),就可以了。

import numpy as np
import random

def generate_matrix(m, n):
    A = np.random.randint(100, size=(m, n))
    return(A)

def user_define(m, n):
    A = generate_matrix(m, n)    
    B = generate_matrix(m, n)
    print("Random Matrix 1 is:")
    print(A)
    print("Random Matrix 2 is:")
    print(B)
    print("Sum of two random matrices is:")
    print(A + B)
    return(A + B)

x = user_define(3, 4)


Random Matrix 1 is:
[[47 24  2 46]
 [65 54  3 80]
 [90  5 42 35]]
Random Matrix 2 is:
[[80 69  8 50]
 [ 2 71 65 36]
 [32  6 49  6]]
Sum of two random matrices is:
[[127  93  10  96]
 [ 67 125  68 116]
 [122  11  91  41]]

【讨论】:

  • 谢谢。你能解释一下 Out[12]: 部分吗?
  • 抱歉,Out[12] 部分就在那里,因为我在 Spyder 控制台中运行它,而 Out[12]: 后面的内容只是函数 user_define(3 , 4) 是两个随机矩阵的和。
  • x = user_define(3, 4)
猜你喜欢
  • 2011-08-30
  • 2017-09-17
  • 2020-07-13
  • 2021-09-22
  • 1970-01-01
  • 2014-06-20
  • 1970-01-01
  • 2013-02-12
  • 2023-03-08
相关资源
最近更新 更多