【发布时间】:2020-01-12 11:46:41
【问题描述】:
有人可以帮帮我吗?
我有一个包含三列 a、b、c 的数组,并说 100 行。
每个单元格都包含一个浮点数列表,如下所示:
[[102.264], [102.376], [102.488], [102.6], [10...
[[104.718], [104.725], [104.732], [105.771]]
我想做的是对于每一行,将 a 与 b 进行比较,并在 c 中设置具有相等性的浮点数(b 中的值 = a 中的值)和具有近似匹配的浮点数(b 中的值在容差为 a) 中的值,例如 0,1。
我在网上花费了无数个小时,试图找出一些可行但没有成功的方法。
我发现以下方法也许有高级技能的人可以提供帮助:
- pandas.merge_asof
- np.isclose
当我尝试上述方法之一时,我会收到错误消息。我真的很菜鸟,因此不知道我必须做什么。我必须最初更改列 a、b、c 的类型吗?我必须将每个列表扩展为 pandas 数组吗?我真的不知道...请帮助
我的预期结果是每行的列 c 具有以下浮点数:
- b 的值 = a 的值
- b 的值 = a 的值,公差为 0,01
有人可以帮忙吗?我真的在乞求,我愿意 PayPal..
感谢您抽出宝贵时间阅读本文并提前提供帮助!
结果数组示例: enter image description here
【问题讨论】:
-
我们可以看看一些代码吗?
-
您应该包含一个最小数据示例:几行,其中
each cell包含 3-4 个项目的列表。I have an array...- 什么样的数组?它是熊猫数据框吗?一个 Numpy 数组?列表列表? -
您好,感谢您的快速回复。正如我所说,我是个菜鸟,我认为它是一个 Numpy 数组。下面是一个没有 c 填充的数组示例:abc 0 NaN NaN NaN 1 [104.264], [104.376], [104.488], [104.6], [10 ... [[106.718], [106.725], [106.732], [106.771 ], [... NaN 2 NaN [[104.931], [104.945], [104.959], [104.973], [... NaN
-
我有点困惑。这是
pandas数据框吗?或者只是一个列表(列表等),或者一个 numpy 数组(如果是这样,shape和dtype?isclose比较 numpy 数组的值 - 但它必须是数字,而不是对象 dtype。如果可以处理浮点数比如nan和inf。allclose将isclose应用于整个数组。 -
pandas在单元格中使用列表会变得混乱,尤其是在列表大小不同的情况下。
标签: python pandas numpy range equality