从python中删除numpy或list中的元素

时间:2012-10-22 15:59:49

标签: python list

所以我正在生成曲线的图像。我用傅里叶级数的前几个模式构建我的线(在每个余弦函数上使用随机选择的幅度),然后从我的傅立叶级数中为曲线生成一个x和y值列表。但是现在我想按照我自己的方式绘制y vs x,因为我需要很多控制权,而且pyplot在引擎盖下做得太多了。

所以我将我的x和y向量(1D numpy数组)转换成整数,所以现在它们引用像素位置(所有内容都缩放以适应128x128 img窗口)。现在我想从我的向量中消除冗余(即,无论我有重复的x和y值,我想从x向量中删除x,从y向量中删除y)。

目前,x和y位于两个不同的向量中。将它们保存为有序对的单个向量会更好吗?那么这将是删除冗余有序对的问题。

无论哪种方式,什么是淘汰裁员的理想途径。我觉得我在这个灌木丛(teehee)周围编码,而且必须是一条简单的pythonic路线。

谢谢大家。

1 个答案:

答案 0 :(得分:2)

我认为保持成对点(元组)更好。如果您不想重写所有代码并进行一些测试,zip两个数组以获取点列表:

points = zip(x_list, y_list)

现在您已经拥有了积分列表,从您的积分列表中生成set(它将自动抛出重复的对),然后再次获取列表:

points = list(set(points))