1
아래 'v3'이 작동하지 않고 특성 오류가 발생하는 이유를 알아 내려고하고 있습니다. v1 및 v2가 v3이 아닌 작동하게 만드는 이유는 무엇입니까? 코드는 짧고 재현성이 있으며 설명이 필요하지 않을 정도로 간단하다고 생각하지만 명확하지 않은 부분이 있으면 알려주세요. func
가 존재하지만 ex.func
하지 않기 때문에클래스, 개체 및 메서드에 대한 혼동 python
import numpy as np
import pandas as pd
class Example(object):
def __init__(self, ts_df):
self.all_df = ts_df
def simple_av(self, lookback=""):
self.agg = self.all_df.mean(axis=1)
class Example_two(object):
def __init__(self, ts_df, method):
self.ts = ts_df
self.method = method
def apply_method(self, **kwargs):
self.output = self.method(self.ts, **kwargs)
ts = pd.DataFrame(np.random.rand(100,2))
'''v1'''
ex = Example(ts)
ex.simple_av()
print (ex.agg.head())
'''v2'''
func = pd.rolling_mean
ex = Example_two(ts, func)
req_args = dict({'window': 3})
ex.apply_method(**req_args)
print (ex.output.head())
'''v3'''
func = Example.simple_av
ex= Example(ts)
ex.func()