如何在 numpy 中向矩阵添加行(带有示例)
您可以使用以下语法在 NumPy 中向矩阵添加行:
#add new_row to current_matrix current_matrix = np. vstack ([current_matrix, new_row])
您还可以使用以下语法仅向满足特定条件的矩阵添加行:
#only add rows where first element is less than 10 current_matrix = np. vstack ((current_matrix, new_rows[new_rows[:,0] < 10 ]))
以下示例展示了如何在实践中使用此语法。
示例 1:在 NumPy 中向矩阵添加一行
以下代码显示了如何在 NumPy 中向矩阵添加新行:
import numpy as np
#define matrix
current_matrix = np. array ([[1,2,3], [4, 5, 6], [7, 8, 9]])
#define row to add
new_row = np. array ([10, 11, 12])
#add new row to matrix
current_matrix = np. vstack ([current_matrix, new_row])
#view updated matrix
current_matrix
array([[ 1, 2, 3],
[4,5,6],
[7, 8, 9],
[10, 11, 12]])
请注意,最后一行已成功添加到矩阵中。
示例 2:根据条件向矩阵添加行
以下代码展示了如何根据特定条件向现有矩阵添加多个新行:
import numpy as np
#define matrix
current_matrix = np. array ([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
#define potential new rows to add
new_rows = np. array ([[6, 8, 10], [8, 10, 12], [10, 12, 14]])
#only add rows where first element in row is less than 10
current_matrix = np. vstack ((current_matrix, new_rows[new_rows[:,0] < 10 ]))
#view updated matrix
current_matrix
array([[ 1, 2, 3],
[4,5,6],
[7, 8, 9],
[6, 8, 10],
[8, 10, 12]])
仅添加第一个元素小于 10 的行。
注意:您可以在此处找到vstack()函数的完整在线文档。
其他资源
以下教程解释了如何在 NumPy 中执行其他常见操作:
如何在 NumPy 数组中查找值索引
如何将 Numpy 数组添加到 Pandas DataFrame
如何将 NumPy 数组转换为 Pandas DataFrame