假设我在 python 中有一个自定义类,它具有属性val. 如果我有一个包含这些对象列的 Pandas 数据框,我如何访问此属性并使用此值创建一个新列?
示例数据:
df
Out[46]:
row custom_object
1 foo1
2 foo2
3 foo3
4 foo4
Name: book, dtype: object
Run Code Online (Sandbox Code Playgroud)
自定义对象属于 Foo 类:
class Foo:
def __init__(self, val):
self.val = val
Run Code Online (Sandbox Code Playgroud)
我所知道的使用实例属性创建新列的唯一方法是使用applyandlambda组合,这在大型数据集上很慢:
df['custom_val'] = df['custom_object'].apply(lambda x: x.val)
有没有更有效的方法?