cod*_*000 3 python dataframe pandas
我有一个对象类型的列,我想将对象的属性访问到另一列中。
import pandas as pd
class foo(object):
@property
def value(self):
return "bar"
if __name__ == "__main__":
a = [foo(), foo(), foo()]
df = pd.DataFrame(data=a, columns=['test'])
df['value'] = df['test'].value
Run Code Online (Sandbox Code Playgroud)
这失败并出现以下错误:
AttributeError: 'Series' object has no attribute 'value'
有没有办法调用类上的属性或函数来填充新列?
class foo(object):
@property
def value(self):
return "bar"
if __name__ == "__main__":
a = [foo(), foo(), foo()]
df = pd.DataFrame(data=a, columns=['test'])
df['value'] = df['test'].apply(lambda x: x.value)
Run Code Online (Sandbox Code Playgroud)
df
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2126 次 |
| 最近记录: |