empty vs empty string("")
1. Sheets 기본 제공 수식(built-in Sheets formula) 몇 가지로 비교한다.
- ISBLANK() : 참조된 셀이 비어 있는지 여부를 확인
- TYPE() : 함수에 제출된 데이터 유형과 연관된 숫자를 반환(1: 숫자, 2: 텍스트, ...)
- COUNTA() : 데이터 집합에서 값의 개수를 반환
- EXACT() : 두 문자열이 동일한지 확인
- EQ() : 지정된 두 개의 값이 같으면 'TRUE'를, 같지 않으면 'FALSE'를 반환
- TOCOL() : 셀의 배열 또는 범위를 단일 열로 변환, TOCOL은 값을 스캔
- QUERY() : 데이터에서 Google Visualization API 검색 언어로 검색을 실행
- FILTER() : 지정된 조건을 충족하는 열 또는 행만 반환하여 원본 범위의 필터링 버전을 반환
- IFERROR() : 첫 번째 인수가 오류 값이 아니면 첫 번째 인수를 반환하고, 오류 값이면 두 번째 인수가 있는 경우 두 번째 인수를 반환하고, 두 번째 인수가 없는 경우 비워 둠
- IF() : 논리 표현식이 'TRUE'인 경우 특정 값을 반환하고 'FALSE'인 경우 다른 값을 반환
2. IFERROR(,) 또는 IF(,,) 함수로 빈 값(empty) 반환하기
식=IFERROR(NA(), "e") 반환: "e"
식=IFERROR(NA(), ) 반환: 빈 값
식=IFERROR( , ) 반환: 빈 값
식=IF(TRUE, 1, 0) 반환: 1
식=IF(TRUE, , 0) 반환: 빈 값
식=IF(FALSE, , 0) 반환: 0
식=IF(FALSE, , ) 반환: 빈 값
식=IF( , , ) 반환: 빈 값
3. ISBLANK() 결과
식=HSTACK("", "") 반환: {"", ""}
식=ARRAYFORMULA(ISBLANK(HSTACK("", ""))) 반환: {FALSE, FALSE}
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=ARRAYFORMULA(ISBLANK(HSTACK(IFERROR(,), IF(,,)))) 반환: {TRUE, TRUE}
4. TYPE() 결과
식=HSTACK("", "") 반환: {"", ""}
식=MAP(HSTACK("", ""), LAMBDA(curr, TYPE(curr))) 반환: {2, 2}
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=MAP(HSTACK(IFERROR(,), IF(,,)), LAMBDA(curr, TYPE(curr))) 반환: {1, 1}
5. COUNTA() 결과
식=HSTACK("", "") 반환: {"", ""}
식=COUNTA(HSTACK("", "")) 반환: 2
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=COUNTA(HSTACK(IFERROR(,), IF(,,))) 반환: 0
6. EXACT() 결과
식=HSTACK("", "") 반환: {"", ""}
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=ARRAYFORMULA(EXACT(HSTACK("", ""), HSTACK(IFERROR(,), IF(,,)))) 반환: {TRUE, TRUE}
7. EQ() 결과
식=HSTACK("", "") 반환: {"", ""}
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=ARRAYFORMULA(EQ(HSTACK("", ""), HSTACK(IFERROR(,), IF(,,)))) 반환: {TRUE, TRUE}
8. TOCOL() 결과
식=HSTACK("", "") 반환: {"", ""}
식=TOCOL(HSTACK("", ""), 1, TRUE) 반환: {"" ; ""}
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=TOCOL(HSTACK(IFERROR(,), IF(,,)), 1, TRUE) 반환: #REF! Error
9. QUERY() 결과
식=VSTACK("", "") 반환: {"" ; ""}
식=QUERY(VSTACK("", ""), "where Col1 is not null", 0) 반환: #NA Error
식=VSTACK(IFERROR(,), IF(,,)) 반환: {빈 값 ; 빈 값}
식=QUERY(VSTACK(IFERROR(,), IF(,,)), "where Col1 is not null", 0) 반환: #NA Error
10. FILTER() 결과
식=HSTACK("", "") 반환: {"", ""}
식=FILTER(HSTACK("", ""), ISBLANK(HSTACK("", "")) 반환: #NA Error
식=HSTACK(IFERROR(,), IF(,,)) 반환: {빈 값, 빈 값}
식=FILTER(HSTACK(IFERROR(,), IF(,,)), ISBLANK(HSTACK(IFERROR(,), IF(,,)))) 반환: {빈 값, 빈 값}
11. 정리
: Sheets 기본 제공 수식(built-in Sheets formula)에 따라 빈 값과 빈 문자열("")은 같은 듯, 다른 듯. 하지만, 엄격히 서로 다르며 목적에 따라 반드시 구분하여 사용(적용)하지 않으면 예기치 않은 결과를 초래한다.
예제시트를 열려면 여기를 클릭하여 파일을 연다. '메뉴 > 파일 > 사본 만들기'를 클릭한다.(In the menu, click File > Make a copy)
예제시트에 액세스할 수 없는 경우 여기를 마우스 오른쪽 버튼으로 클릭하고 '시크릿 창에서 링크 열기' 선택.
Comments
Post a Comment