본문 바로가기

분류 전체보기

(56)
엑셀 32767글자 제한은, 구글스프레드시트에서는 없다. 엑셀에서 셀 끝이 잘려서 화난김에 실험. 셀 값이 너무 길어서 끝이 잘리지 싶다면, 아예 csv 로 저장해서 텍스트 에디터 등으로 열어야 안전하다. 엑셀에서 한번 열었다가 저장하는 순간 답이없다. 엑셀로 열고싶으면 사본으로 열도록.
엑셀2022 인코딩 형식 변경해서 저장하기 ANSI인코딩(UCS2나 UTF16 일 것이다.)으로 저장하는 MS excel에서, utf-8 인코딩으로 저장하는 방법 설명. 다른 이름으로 저장하기 간다. 웹 옵션을 선택 인코딩 탭을 선택 아랫줄에서 한국어(이건 cp949 쓴다.) 대신 유니코드(utf-8) 적힌것으로 바꾸어 저장. 항상 utf-8 인코딩으로 저장하고 싶다면 아래처럼 선택 홈 >> 옵션 >> 고급 >> 쭉 내려가서 '웹 옵션' >> 인코딩 변경. 유니코드(utf-8) 선택.
xlsx 파일의 이론상 최대용량은 얼마일까? 2048 테라바이트 나옴ㅋㅋ csv는 저장형식이 반점(콤마)라서 한 셀당 글자길이 제약을 안받는듯? 형식으로 저장하는데 들어가는 수십 kB는 생략. 나중가면 무시가능한 오차가 되어버린다. 유형 값 2의 거듭제곱으로 1개 글자 최대크기 (UTF-8) 4 바이트 2^2 1개 셀에 가능한 최대 문자 32,767 개 2^15-1 ㄱ. 1개 셀에 들어가는 최대값 150,908 바이트 / 15만908 2^17-2^2 최대 행 개수 1,048,576 개 / 104만8756 2^20 최대 열 개수 16,384 개 2^14 ㄴ. 최대 셀 개수 17,179,869,184 개 / 171억 7986만 9184 2^34 xlsx 총 데이터 크기 = ㄱ * ㄴ 2,592,579,698,819,072 바이트 2,592조 579,6억 98,81만 9,072 2..
UnicodeDecodeError 만드는 바이트값 목록 UTF-8 (1~4바이트 가변) 인코딩 바이트 크기와 위치 가능 설명+오류값 판별법 1바이트 가능: \x00 ~ \xFF 전부 가능. \x00 ~ 2바이트 이상에서, 나머지 바이트 가능: \x80 ~\BF 불가능: \x00~\x7F \xC0~\xFF 바이트 값이 반드시 10xx xxxx 이어야 하므로 헥스코드2자리 중 앞자리가 8,9,A,B (1000 ~ 1011) 만 가능하다. 나머지 값인 0~7, C~F 가 들어가면 오류난다. 2바이트의 첫번째 바이트 가능: \xC0~\xDF 불가능: \x00~\xBF \xE0~\xFF 바이트 값이 반드시 110x xxxx 이어야 하므로 헥스코드2자리 중 앞자리가 C,D (1100,1101)만 가능하다. 나머지 값인 0~9, A,B,E,F 가 들어가면 오류난다. 3바..
한국어 인코딩 과정에서 나오는 주요 Unicode Decode Error 목록 내가 이 문제로 골머리를 좀 앓는다. 나 포함 Unicode Decode Error 와 다투는 많은 이들을 위해 도움이 되었으면 좋겠다. 1. 들어가기에 앞서, position number를 이해한다. byte_data = b'\x00\x01\x02\x03\x04 ... \0xFF' 라는 예시를 들겠다. 인코딩 오류를 볼때 아래의 개념을 쓴다. in position 0 == 0번째 위치 == 바이트값 \x00 in position 1 == 1번째 위치 == 바이트값 \x01 in position 2 == 2번째 위치 == 바이트값 \x01 in position 255 == 255번째 위치 == 바이트값 \xFF 실제 텍스트 데이터는 이보다 복잡하게 나올 것이다만. 바이트, 인코딩, 유니코드 사이의 관계 ..
유니코드 그룹 표(Unicode groups table in EN & KR) 실제 문자를 보고 싶으면 Win(田)+S 로 검색창 열고, '문자표' 열어서 보면 가장 깔끔하다. 인코딩 관련 조치에 이어서, 이번엔 utf-8 이 어느어느 영역에 어떤 것을 할당했는지 확인해 보았다. 일부는 번역이 되어 있으나, 전부 다 되어있지는 않아서 직접 다 메웠다. 노가다라 몇시간 걸림ㅋ. https://docs.google.com/spreadsheets/d/1k_O31DPb14fYi3qkQYkbMTRgzPaLGVV5MlkSFRvH000/edit#gid=983189201 utf-8 table EN,KR utf-8 code groups EN,KR 2byte Utf-8 HexValue , Group Name,한국 어 이름 U+0000 ... U+007F, Basic Latin,라틴 U+0080 ....
윈10에서 크롬 새 탭(=빈 탭. 기본화면) 바로가기를 바탕화면에 만들기 바탕화면을 바로 보고 싶으면 win(田)+D 누르시오. 켜놓은 창이 모두 최소화된다. 내가 보는 특정 사이트 바로가기 만드는법(▷링크) 말고, 크롬 바로키면 나오는 창 띄우는 바로가기 만드는 방법이다. 이거 만드는 이유는, 크롬 실행 단축키 만들고 싶어서다. (사실 탐색기(田+E) 열고, 주소창 선택해서(Alt+D), 사이트 입력하면 기본 웹브라우저인 크롬을 실행시켜 주나 조금 귀찮다.) 바로가기 직접 만들고 주소 지정해도 되지만, 크롬 깔린 주소 찾아서 거기서 우클릭 바로가기 만들기 써서 가져오는게 더 편하니까 이 방법으로 알려준다. 크롬 바로가기 받아서 수정하기 만드려고 시도했는데 잘 안되네. 직접 만드시오. 어차피 바로가기 받아서 수정하나, 직접 만드나 시간 차이도 얼마 안날 거다. 크롬 바로가기를..
time stamp method in Python DeepLearning Xception 을 사용했다. 에포크 사이간격 잴때 처음 시작-끝을 재기보다는 각 에포크에 callback을 지정해서 time을 저장한 뒤 합쳐야 더 정확하다. 실제로 결과가 callback(cb) 로 저장한 리스트의 총합 < code cell 에 뜬 시간 < 전체 시작-끝 띄웠을때 시간 으로 나온다.
how to make a shorter named function which is originally a long-named function It is simple. define another function with shorter name, and just run the original function and return the result. the following is an example of it. original function is named too long. make short-named function and call original function and return the result of it. it does not take that much time more. def a_function_which_is_too_long_to_use(in1, in2): res_orignial = in1 + in2 return(res_orig..
for loop 은 최대한 적게 써야 빠르다. [('단어1', #빈도1), ('단어2', #빈도2), ... , ('단어n', #빈도n)] 이라는 tuple(str, int)-list 두개(input1, inpu2)에서 겹치는 단어(intxn에 추따로 단어만 저장)만 뽑아서 그 빈도수를 더하는 연산이다. 몇달전 초창기에는 전수조사 방식으로 만들었다. 전체 목록을 보며 대조해가면서 조사하라는 구문. intxn 과 input1, intxn과 input2를 각각 조사해야되다 보니 길이가 엄청나게 길다. 최근에 .index 라는 기능을 찾아내어 이를 썼더니 훨씬 간단해졌다. 실제로 속도가 어마어마하게 빨라졌다. 그래서 처음에 내가 잘못만든줄 알았는데 코드분석 해보니 느릴수밖에 없었겠더라. 저 index 라는 기능은 특정 행렬에서 어떤 단어의 위치를 반환한다..