Python切片实现二维数组部分复制:提取前8行前两列
本文介绍如何利用Python的numpy库和切片语法,从10x3的CSV数据集中提取前8行的前两列数据。通过示例代码展示如何定义目标数组并赋值,实现特定行列范围的精确复制,适用于机器学习数据预处理场景。
数据背景与任务定义
假设有一个维度为10行3列的.csv格式数据集,命名为dataSet。
1.1,1.5,2.5
1.3,1.9,3.2
1.5,2.3,3.9
1.7,2.7,4.6
1.9,3.1,5.3
2.1,3.5,6
2.3,3.9,6.7
2.5,4.3,7.4
2.7,4.7,8.1
2.9,5.1,8.8
核心代码实现与切片语法解析
任务目标是将该数据集中前8行的前两列数据提取并复制到一个新的数组中,这里将新数组命名为trainData。实现这一功能的核心代码逻辑如下。
m, n = np.shape(dataSet)
trainData = np.ones((m, n))
trainData[:8,:-1] = dataSet[:8,:-1]
在代码中,冒号(:)用于界定复制的行范围,而逗号(,)后的部分则用于指定要复制的列范围。若对Python切片语法不熟悉,建议查阅相关文档以深入理解其工作原理。
运行结果展示
执行上述代码后,得到的运行结果如下所示。
[[ 1.1 1.5 1. ]
[ 1.3 1.9 1. ]
[ 1.5 2.3 1. ]
[ 1.7 2.7 1. ]
[ 1.9 3.1 1. ]
[ 2.1 3.5 1. ]
[ 2.3 3.9 1. ]
[ 2.5 4.3 1. ]
[ 1. 1. 1. ]
[ 1. 1. 1. ]]
以上就是利用Python切片技术实现二维数组部分复制的完整示例。希望此内容能为您提供参考,欢迎继续支持本站获取更多技术分享。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













