나는 엑셀 시트를 가지고있다. 이것은 나의 고정 가능한 판독 값입니다. 수백 개가 있습니다. 불행히도 숫자가 아닌 모든 가능한 판독 값에 대한 데이터가 있습니다. 더 읽으면 위치가 중요합니다.
예제 시트, 위치는 변경되지 않습니다.
Readings
0 1111
1 1234
2 1243
3 9999
4 1237
5 1412
...
999 8878
이제 월요일에 5 개 (사실상 5 개는 단순함)라고 말하면서 새로운 판독 값을 가져와야합니다.
Pandas 데이터 프레임 :
Taken
0 9999
1 9999
2 1237
3 8878
4 1412
나는 그것들을 발생 횟수를 보여주는 목록으로 표현하고 싶습니다. X 번 나타나면 X, 그렇지 않으면 0입니다. 따라서이 5 개의 판독 값은 다음과 같습니다.
[0,0,0,2,1,1,1, .... 0]
이를 수행하는 방법이 있습니까?
이 코드는 문제에 대한 좋은 접근 방식 일 수 있습니다.
import pandas as pd
df1 = pd.DataFrame({"Readings":[1111,1234,1243,9999,1237,1412,8878]})
df2 = pd.DataFrame({"Taken":[9999,9999,1237,8878,1412]})
def checkOcurrance(val):
count = 0
try:
count = df2["Taken"].value_counts()[val]
except:
pass
return count
df1["Ocurrance"] = df1["Readings"].apply(checkOcurrance)
그러면 df1의 결과는 다음과 같습니다.
>>> df1
Readings Ocurrance
0 1111 0
1 1234 0
2 1243 0
3 9999 2
4 1237 1
5 1412 1
6 8878 1
그리고 Ocurrance 열을 list에 전달하여 마지막으로 다음과 같이 목록을 가져올 수 있습니다.
out = df1["Ocurrance"].tolist()
를 야기하는:
>>> out
[0L, 0L, 0L, 2L, 1L, 1L, 1L]
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다