안녕하세요 sample data query중 질문이 있습니다.
sample data의 환자 ID는 모두 47715145949628700 로 엑셀에서는 확인됩니다.
그런데 pandas로 sample code에 있는 방식으로
sample_measurement_table을 load를 하면 47715145949628715로 뜨게 되는데요,
혹시 저만 겪는 문제인지요.. 기타 cohort 파일이나, label파일은 pandas로 불러도 같은 ID인 00으로 끝나는 것입니다.
구글링해봐도 특별히 원인을 잘 모르겠는데, 혹시 아이디어를 구할 수 있을지요?
만약 파일자체가 문제라면 쿼리문제로 추후 성능에 악영향을 줄 수 있을까 싶어 문의드립니다.
감사합니다.
Created by park 혹시 몰라서 train, validation, test, sample 데이터의 person_id, subject_id 를 확인해본 결과 말씀 주신 문제는 없는 것으로 확인되었습니다.
중요한 확인 사항을 질문글로 남겨주셔서 감사합니다.
감사합니다! 답변 감사드립니다.
sample data가 나머지 파일은 00으로 끝나느데 measure 데이터만 15로 끝나게 되어 기타 파일도 다른것인가 하는 궁금증이 있었습니다.
그렇다면 큰 문제 없을 것 같습니다. 감사합니다. 말씀주신 사항은 엑셀에서 csv의 numeric value 를 변환하였을 시 발생되는 rounding error 로 생기는 오차입니다.
엑셀에서는 수치형 값에 대한 제한을 가지고 있으며 이를 초과하는 값이 있는 경우 최대치로 고정하여 제한합니다.
```
엑셀 최대치
Number precision 15 digits
Largest allowed positive number 9.99999999999999E+307
```
만약 엑셀로 로드하여 다시 저장하시는 경우 뒤의 값이 rounding 처리되어 저장되기 때문에 00으로 되어 실제 파일과 달라졌을 가능성이 있습니다.
현재 전체 샘플 파일을 notepad++로 파일을 확인하였을 시에 모든 파일의 환자 식별자가 47715145949628715로 되어 있습니다.
새로 파일을 다운받으신 후 엑셀 대신 다른 텍스트 에디터로 보시고 동일한 이슈가 있는 경우에는 다시 회신 부탁드리겠습니다. 확인 후 샘플 파일 다시 보내드리��습니다.
추가로 파이썬 같은 경우는 수치형 값으로 변환하여도 unsigned int 64bit 를 초과하여도 자동적으로 byte array 수식 처리를 하므로 큰 문제는 없습니다.
감사합니다.
```
엑셀 최대값 참조
https://support.office.com/en-us/article/Excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3#bmcalculation
rounding error 참조
https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
```