Python 3.x python中的数据结构重塑(使用pandas选项)

Python 3.x python中的数据结构重塑(使用pandas选项),python-3.x,pandas,Python 3.x,Pandas,我是python新手,遇到了做一些“数据重塑”的需要 我有一个对象列表,所有对象都是同一类型的特定名为tuple 我对这些对象的命名字段中的值有以下了解: 它们的两个字段(比如x和y)包含的值最多可能重复组合两次,第三个变量(比如c)将始终具有两个可能值中的一个(比如“黑色”和“白色”),并且这三个变量的组合将始终是唯一的 i、 e.我可以在列表中有T(x=1,y=1,c='黑色',更多字段)和T(x=1,y=1,c='白色',更多字段)中的一个或两个,但它永远不会有两个项目,使它们在x y和c

我是python新手,遇到了做一些“数据重塑”的需要

我有一个对象列表,所有对象都是同一类型的特定
名为tuple

我对这些对象的命名字段中的值有以下了解:

它们的两个字段(比如x和y)包含的值最多可能重复组合两次,第三个变量(比如c)将始终具有两个可能值中的一个(比如“黑色”和“白色”),并且这三个变量的组合将始终是唯一的

i、 e.我可以在列表中有T(x=1,y=1,c='黑色',更多字段)和T(x=1,y=1,c='白色',更多字段)中的一个或两个,但它永远不会有两个项目,使它们在x y和c上相同

我想重新组织它们,以便在原始列表中每个x,y组合有一个(命名)元组的列表,并且原始项将分配给名为black和white的属性

所以 如果原始列表是

orig=[T(x=1,y=1,c='Black',d=1),T(x=1,y=1,c='White',d=2),
 T(x=1,y=2,c='White',d=3),
 T(x=3,y=1,c='Black',d=4)]
它将转变为

target=[T2(x=1,y=1,black=T(x=1,y=1,c='Black',d=1),white=T(x=1,y=1,c='White',d=2)),
 T2(x=1,y=2,black=None,white=T(x=1,y=2,c='White',d=3)),
 T2(x=3,y=1,black=T(x=3,y=1,c='Black',d=4),white=None)
]

当然,原始列表不保证按x和y值排序

同样重要的是,T命名的touples应该在第二个数据结构中保持相同的实例,例如,如果有人分配
orig[0]。d=5
,则
target[0]。black.d
将相应地改变


我很想知道是否有一种方法可以做到这一点,只使用python而不使用任何花哨的库,而且从我读到的一些关于
pandas
的文章中,我猜这可能也非常有用,我也想知道是否存在一个使用pandas的好解决方案。

T和T2是什么?只是命名的名称而已元组。什么是T和T2?只是命名元组的名称。