에 특정 월의 값과 조건에 따라 팬더 Dataframe 필터, 10900 집 값까지 Family_ids는 다릅니다. 따라서 데이터 프레임의 라인 수는 250 만 개가 넘습니다.나는 0에서 239으로 이동 다음 머리</p> <pre><code>import pandas as pd f = pd.Dataframe(columns=['month', 'Family_id', 'house_value']) </code></pre> <p>개월로 큰 dataframe이 다른 열
마지막 주택 가격과 각 가족마다 초기 값 사이에 차이가있는 경우에만 데이터 프레임을 필터링하고 싶습니다.
일부 샘플 데이터는 다음과 같이 보일 것이다 :
f = pd.DataFrame({'month': [0, 0, 0, 0, 0, 1, 1, 239, 239], 'family_id': [0, 1, 2, 3, 4, 0, 1, 0, 1], 'house_value': [10, 10, 5, 7, 8, 10, 11, 10, 11]})
그리고 그 샘플에서
는 결과 dataframe은 다음과 같습니다g = pd.DataFrame({'month': [0, 1, 239], 'family_id': [1, 1, 1], 'house_value': [10, 11, 11]})
그래서 나는이 같은 것 코드에 생각 :
,536,913,632 :
ft = f[f.loc['month'==239, 'house_value'] > f.loc['month'==0, 'house_value']]
또한이 시도 10
g = f[f.house_value[f.month==239] > f.house_value[f.month==0] and f.family_id[f.month==239] == f.family_id[f.month==0]]
위의 코드는 오류 Keyerror: False
및 ValueError
을 제공합니다. 감사.
' 'month'== 239' 문자열을 비교하면'false'가되고'.loc'을 사용하여 색인에서'False'를 찾습니다. 따라서 키 오류가 발생합니다. 정확히 당신이 성취해야 할 것이 무엇입니까. 데이터를 게시 할 수 있습니까 – Dark
두 시리즈의 길이가 다를 수 있으므로 그렇게 비교할 수 없습니다. 그래서 입력으로 샘플 데이터를 원하는 출력을 게시 – Dark