Python——生成矩阵

def makeMatrix(row_num, column_num, start=0.1, step=0):
    matrix = []
    row = []
    for i in range(row_num):
        for j in range(column_num):
            row.append(start)
            start += step
        matrix.append(row)
        row = []
    return matrix

参数解释:row_num=行数  column_num = 列数  start=第一行第一列元素的值  step=步长

经常用到,记录一下


### 使用 Python 和 NumPy 创建二维数组 为了创建一个简单的二维数组,可以使用 `np.array` 函数来定义具体的数值。对于更复杂的初始化需求,则有多种内置的方法可供选择。 #### 方法一:通过列表构建二维数组 可以直接利用嵌套的列表结构并传递给 `np.array()` 来形成多维数据集: ```python import numpy as np data = [[1, 2], [3, 4]] matrix_from_list = np.array(data) print(matrix_from_list) ``` 这种方法适合于已知具体元素值的情况[^3]。 #### 方法二:使用预设模式填充整个矩阵 如果希望快速得到特定形状且具有统一初始值的数据集合,那么可以考虑如下几种方式之一: - **全零矩阵**:调用 `zeros(shape)` 可以获得指定大小内全部位置都设置成0的结果; - **单位阵/恒等矩陣**:借助 `eye(N[, M=None, k=0])` 或者 `identity(n)` 能够方便地获取方阵形式下的对角线等于1其余部分皆为0的对象; - **常数填充**:除了上述两种特殊情况外,还可以运用 `full((rows, cols), value)` 实现任意固定数字在整个区域内的重复分布。 下面给出几个实例说明这些概念的应用场景: ```python # 定义变量名以便后续引用 row_count = 5 column_count = 7 zero_matrix_example = np.zeros((row_count, column_count)) ones_matrix_example = np.ones([row_count, column_count]) constant_fill_example = np.full((row_count, column_count), fill_value=-9) print(zero_matrix_example) print(ones_matrix_example) print(constant_fill_example) ``` 以上代码片段展示了不同类型的矩阵是如何被轻松构造出来的。 #### 方法三:基于序列生成器动态建立 当需要按照一定规律排列各行列上的成员时,可采用类似于 `arange(start, stop[, step])`, `linspace(start, stop, num=50)`, 等工具来自动生成相应范围内的离散点作为基础素材再进一步加工处理成为目标格式。 这里提供一段简单例子用于展示如何结合这两个函数实现连续变化趋势下的二维表单制作过程: ```python sequence_based_array = np.arange(1., 16.).reshape(3, 5) linear_spaced_values = np.linspace(-2., 2., endpoint=True, retstep=False).reshape(8, 1) print(sequence_based_array) print(linear_spaced_values) ``` 此段脚本先是建立了从1到15共十五个整数构成的一维向量随后调整其布局使之变为拥有五行五列特性的表格状实体;接着又演示了另一种途径——即在线性空间上均匀选取八个样本点并将它们组织起来形成单一方向延伸的新对象[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值