我有一个数据框A
。
它有一列col
。
A['col']
是一个列,其每个条目的类型为my_class。
'my_class'
包含my_class.x
和my_class.y
我希望将A['col']
分为A['x']
和A['y']
。
A['col'].str_split()
不会工作,因为条目类型不是字符串buy my_class
我该怎么做?
答案 0 :(得分:2)
您可以使用transform
df.col.transform(lambda k : pd.Series(k.__dict__))
示例:
class A:
def __init__(self, a, b):
self.a = a
self.b = b
obj1 = A("foo1", "bar1")
obj2 = A("foo2", "bar2")
df = pd.DataFrame({"col": [obj1, obj2]})
col
0 <__main__.A object at 0x116de7b00>
1 <__main__.A object at 0x116de7438>
然后
df.col.transform(lambda k : pd.Series(k.__dict__))
a b
0 foo1 bar1
1 foo2 bar2