Book
[notion] 책읽기와 데이터 정밀도
나모찾기
2019. 7. 31. 11:57
notion을 이용해서 책 읽기를 기록하고 있다.
전체 책 쪽과 현재 읽은 쪽을 이용하면 몇 % 읽었는지 알 수 있다.
아래와 같은 수식을 이용했다. ceil을 사용한 이유는 소숫점이 14.550264550265 와 같이 너무 길어져 버리기 때문이다.
ceil(prop("읽은쪽") / prop("쪽수") * 100)
이렇게 하다보면 문제가 두 배를 읽었는데 퍼센트는 4배가 커지는 현상이 발견되었다.
- 2019-07-29 데이터 중심 애플리케이션 설계: p.222 (39%)
- 2019-07-30 데이터 중심 애플리케이션 설계: p.232 (40%) + p.10 (+1%)
- 2019-07-31 데이터 중심 애플리케이션 설계: p.252 (44%) + p.20 (+4%)
이유는 ceil (올림) 연산이 민감한 반올림 연산처럼 동작하기 때문이다.
소수점 제거 함수 삼총사 ceil(), floor(), round() 참고.
그래서 아래와 같이 ceil 대신 round 로 함수를 변경하였다.
round(prop("읽은쪽") / prop("쪽수") * 100)
- 2019-07-29 데이터 중심 애플리케이션 설계: p.222 (38%)
- 2019-07-30 데이터 중심 애플리케이션 설계: p.232 (40%) + p.10 (+2%)
- 2019-07-31 데이터 중심 애플리케이션 설계: p.252 (43%) + p.20 (+3%)
좀 더 데이터가 7월 30일 쪽으로 1% 씩 이동했음을 알 수 있다.
회고
사실 처음에는 아래와 같이 소숫점을 늘리는 것을 처음에 고려하였음 (회고)
ceil(prop("읽은쪽") / prop("쪽수") * 10000) / 100