为什么在我尝试计算整体漂移速度时 Trackpy 给我一个错误?
Why does Trackpy give me an error when I try to compute the overall drift speed?
我正在完成 Trackpy 演练(http://soft-matter.github.io/trackpy/v0.3.0/tutorial/walkthrough.html) but using my own pictures. When I get to calculating the overall drift velocity, I get this error and I don't know what it means:drift error
我没有丰富的编码经验,所以我什至不确定如何查看源代码来弄清楚发生了什么。
你的屏幕截图显示了错误的回溯,即你调用了一个函数,tp.compute_drift()
,但是这个函数调用了另一个函数,pandas_sort()
,它又调用了另一个函数,等等,直到 raise ValueError(msg)
被调用,这会中断链。最后一行是实际的错误信息:
ValueError: 'frame' is both an index level and a column label, which is ambiguous.
要理解它,你必须知道 Trackpy 将数据存储在 DataFrame
object 中,来自 pandas 库。您要从中提取漂移运动的跟踪数据存储在这样一个 object, t2
中。如果你打印 t2
它可能看起来像这样:
y x mass ... ep frame particle
frame ...
0 46.695711 3043.562648 3.881068 ... 0.007859 0 0
3979 3041.628299 1460.402493 1.787834 ... 0.037744 0 1
3978 3041.344043 4041.002275 4.609833 ... 0.010825 0 2
单词"frame"是两列的标题,混淆了排序算法。正如错误消息所说,按帧对 table 进行排序是不明确的。
解决方案
索引(最左边)列在这里不需要名称,所以用
删除它
t2.index.name = None
然后重试。检查您是否拥有最新的 Trackpy 和 Pandas 版本。
我正在完成 Trackpy 演练(http://soft-matter.github.io/trackpy/v0.3.0/tutorial/walkthrough.html) but using my own pictures. When I get to calculating the overall drift velocity, I get this error and I don't know what it means:drift error
我没有丰富的编码经验,所以我什至不确定如何查看源代码来弄清楚发生了什么。
你的屏幕截图显示了错误的回溯,即你调用了一个函数,tp.compute_drift()
,但是这个函数调用了另一个函数,pandas_sort()
,它又调用了另一个函数,等等,直到 raise ValueError(msg)
被调用,这会中断链。最后一行是实际的错误信息:
ValueError: 'frame' is both an index level and a column label, which is ambiguous.
要理解它,你必须知道 Trackpy 将数据存储在 DataFrame
object 中,来自 pandas 库。您要从中提取漂移运动的跟踪数据存储在这样一个 object, t2
中。如果你打印 t2
它可能看起来像这样:
y x mass ... ep frame particle
frame ...
0 46.695711 3043.562648 3.881068 ... 0.007859 0 0
3979 3041.628299 1460.402493 1.787834 ... 0.037744 0 1
3978 3041.344043 4041.002275 4.609833 ... 0.010825 0 2
单词"frame"是两列的标题,混淆了排序算法。正如错误消息所说,按帧对 table 进行排序是不明确的。
解决方案
索引(最左边)列在这里不需要名称,所以用
删除它t2.index.name = None
然后重试。检查您是否拥有最新的 Trackpy 和 Pandas 版本。