我想将宽度和深度尺寸转换为多边形的 4 个角。 这意味着我应该从具有宽度和深度尺寸的 1 行变为每个角具有 X、Y 坐标的 4 行。
在 Python 中使用 pandas 数据框执行此操作的好方法是什么?
我尝试手动创建每一行并附加 apply (4 个应用函数),但我知道一定有一个更优雅的解决方案。
我有一个 Pandas 数据框,如下所示:
W | D |
---|---|
100 | 150 |
125 | 170 |
我想要一个看起来像这样的:
X | 是 |
---|---|
0 | 0 |
0 | 150 |
100 | 0 |
100 | 150 |
0 | 0 |
0 | 170 |
125 | 0 |
125 | 170 |
谢谢!
此代码可能对您有帮助:
>>> from itertools import product
>>>
>>> list1 = [0, 0, 0, 0]
>>> list2 = [75, 100, 125, 150]
>>>
>>> combinations = list(product(list1, list2))
>>> for combination in combinations:
... print(combination)
...
(0, 75)
(0, 100)
(0, 125)
(0, 150)
(0, 75)
(0, 100)
(0, 125)
(0, 150)
(0, 75)
(0, 100)
(0, 125)
(0, 150)
(0, 75)
(0, 100)
(0, 125)
(0, 150)
>>>
我认为先进行计算,然后将条目放入 pandas 数据框中更容易。