파이썬 연산자들을 루프 돌고 싶을 때
조회수 282회
pandas 컬럼들 사이 관계를 탐색하고 있습니다.
두 컬럼 씩 뽑아서, 타겟 컬럼이 어떤 두 컬럼 간의 어떤 연산으로 나오는 것인지를 탐색하고자 합니다.
# 이 코드는 python에 기반한 pseudo 코드 입니다. 실행되지 않습니다.
for i, j in combinations(df.columns, r=2): # itertools의 combinations
for operator in [+, -, *, /]: # 문제의 핵심 라인
val_tmp = operator(df[i], df[j])
if RMSE( df.target - val_tmp ) <0.01:
print(i, operator, j)
목적은 간단하지만, 저 오퍼레이터들을 루프 하는 부분을 어떻게 처리해야 하는지 모르겠습니다.
If else 를 떡칠해서 더럽게 처리하는 것 말고, 스마트한 방법이 있을 것 같습니다.
댓글 입력