2017-12-06 7 views
0
for i, row in lst.iterrows(): 
    value1 = a 
    value2 = b 
    result = 12345 

    if df[(df['column1'] == value1) & (df['column2'] == value2)]: 
      df['column_result'] == result 

print df 

나는, 컬럼은 값 1에 해당하고 2 열은 값 2 및 해당 행의 결과에 채우기 동일 어디 dataframe의 행을보고 싶다.데이터 프레임 파이썬에서 데이터를 찾아서 채우는 방법은 무엇입니까?

ValueError : DataFrame의 진리 값이 모호합니다. a.empty, a.bool(), a.item(), a.any() 또는 a.all()을 사용하십시오.

답변

0

orand python 문에는 truth-values가 필요합니다. 당신은 "비트"| (또는) 또는 & (과) 작업을 사용해야하므로 팬더를 들어 이러한 모호함으로 간주됩니다 이것들은 산출하기 위해 데이터 구조체의 이러한 종류의 오버로드

result = result[(result['var']>0.25) | (result['var']<-0.25)] 

요소를 현명한 or (또는 and) . 여기

추가 정보 : Truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()

1

df.loc[(df['column1'] == value1) & (df['column2'] == value2), 'column_result'] = result 
+0

완벽한보십시오! 정말 고맙습니다! –

+0

@ChristianVandeKoppel, 답변 수락을 고려해보십시오. 문제를 해결하는 데 도움이됩니다. – Vaishali

관련 문제