如何根据父数组中选定列的值创建属于较大父数组的子组的数组?

时间:2019-04-30 17:04:55

标签: python arrays numpy

我对Python和一般编程非常陌生。我需要组织大量原始数据以进行绘制。 数据表有3列:设备ID,电压,电流。 第一列有很多重复的元素,因为每个“设备ID”都有许多测量的电压和电流,因此只有一小部分具有唯一“设备ID”的行。 我的目标是在单独的系列中绘制每个设备ID。 现在,在我的脑海中,我需要将阵列分成较小的阵列,以使用典型的matplotlib绘图命令。 如何告诉python找出设备ID列中的新值出现在哪个位置,然后将其放入新数组中?

我玩过numpy.unique,但是我现在想我需要循环检查每一行并将其与上一行进行比较,例如:

for row a in Device ID column:
    is row n = n-1?
    if true then continue populating new array with all columns for this row
    if false then start new array with all columns for this row

我真正要做的就是按设备ID列对大数组进行排序,因为我认为这是使用for循环方法的第一步

按Dev ID(原始数据的第二列)对数据进行排序

data_sorted_bydev_id = data[ data[:,1].argsort() ]

只是寻求建议,如果“ for循环”方法是最好的选择。

0 个答案:

没有答案