首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何按列对nx3 numpy数组进行排序,但它会记住该行中的数据?

对于一个nx3的numpy数组,可以使用numpy的argsort函数按列进行排序,并利用numpy的切片功能实现记录该行中的数据。

具体步骤如下:

  1. 导入numpy库:
代码语言:txt
复制
import numpy as np
  1. 创建一个nx3的numpy数组:
代码语言:txt
复制
array = np.array([[2, 1, 3], [5, 4, 6], [8, 7, 9]])
  1. 使用argsort函数按列排序数组:
代码语言:txt
复制
sorted_indices = np.argsort(array[:, 0])  # 按第一列排序,返回排序后的索引
sorted_array = array[sorted_indices]  # 根据索引重新排序数组
  1. 使用切片操作保留原始行数据:
代码语言:txt
复制
sorted_array[:, 0] = array[:, 0]  # 保留第一列原始数据

最终,sorted_array中的数据按第一列进行排序,并且保留了原始行中的数据。

下面是以上操作的完整代码示例:

代码语言:txt
复制
import numpy as np

array = np.array([[2, 1, 3], [5, 4, 6], [8, 7, 9]])

sorted_indices = np.argsort(array[:, 0])
sorted_array = array[sorted_indices]

sorted_array[:, 0] = array[:, 0]

print(sorted_array)

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器:提供高性能、稳定可靠、安全高效的云服务器,适用于各种应用场景。
  • 腾讯云对象存储 COS:提供海量、安全、低成本的云存储服务,适用于存储和处理各种非结构化数据。
  • 腾讯云人工智能:提供丰富的人工智能服务,包括图像识别、语音识别、自然语言处理等,可应用于各行各业的智能化需求。
  • 腾讯云区块链服务 TBCAS:提供安全、高效、易用的区块链服务,适用于各种场景,如供应链金融、溯源管理等。

注意:本回答所提供的是腾讯云的相关产品,其他品牌商的产品请自行参考其官方文档。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券