본문 바로가기
통계프로그램 비교 시리즈/엑셀과 SAS 함수

【엑셀(EXCEL)과 SAS함수】 COUNTA 함수

by 기서무나구물 2019. 2. 7.

포스팅 목차

    o COUNTA 함수

     


    목 적 : 

    COUNTA 함수는 인수 목록에서 공백이 아닌 셀의 개수를 카운트한다.

     

    문 법

     

    - 엑 셀 : COUNTA(value1, [value2], ...)

    - SAS  : 변수 처리   - CMISS 함수와 배열   /  관측치 처리 - 프로시져 또는 SAS 프로그래밍

     

    범주 : 통계 함수

     


    관련 함수

    함수명 함수내용
    AGGREGATE
    목록 또는 데이터베이스에서 집계 값을 반환한다.
    COUNT
    지정한 인수 목록에서 숫자의 개수를 카운트한다.
    COUNTA 인수 목록에서 공백이 아닌 셀의 개수를 카운트한다.
    COUNTBLANK 범위 내에서 공백 셀의 개수를 계산한다.
    COUNTIF
    범위 내에서 주어진 조건과 동일한 셀의 개수를 계산한다.
    COUNTIFS 범위 내에서 여러 조건과 일치하는 셀의 개수를 계산한다.
    DCOUNT 데이터베이스에서 지정한 조건과 일치하는 숫자가 있는 셀의 개수를 카운트한다.
    DCOUNTA 데이터베이스에서 지정한 조건과 일치하는 셀 중에서 데이터가 속한 셀의 개수(결측치를 제외한)를 카운트한다.
    SUM SUM 함수는 지정한 인수 리스트의 합을 구한다.
    SUMIF SUMIF 함수는 지정한 조건에 맞는 해당하는 범위에 속한 셀들의 합을 구한다.
    SUMIFS SUMIFS 함수는 범위 내에서 지정한 여러 조건을 만족하는 셀들의 합을 구한다.
    SUMPRODUCT SUMPRODUCT 함수는 배열의 대응되는 구성 요소끼리 곱한 후 그 곱의 합계를 반환한다.

     


    예 제

    다음 예제는 CMISS 함수와 SAS 프로시져를 사용하여서 지정한 수치형 인수 리스트 중에서 비 결측 관측치(공백을 제외한 관측치)의 개수를 카운트한다.

    SAS Program
    DATA COUNTA;
         INPUT (COUNT1-COUNT3) (: $1.) (COUNT4-COUNT6) (: 1.);
    DATALINES;
    A B C 1 2 3
    A . C . 2 3
    A . . 1 . 3
    . . . . . .
    ;
    RUN;

     


    * 배열을 사용하여서 수치형 변수와 문자형 변수 개수 카운트 후 결측치를 소유한 변수의 개수를 제거한다;
    * CMISS 함수는 문자형 결측치와 수치형 결측치를 포함한 결측치의 개수를 카운트한다.
    * N 함수는 수치형 결측치 개수를 카운트한다.;

    SAS Program
    DATA COUNTA_1;
     SET COUNTA;
         ARRAY VAR1[*] _NUMERIC_;
         ARRAY VAR2[*] _CHARACTER_;
         
         VAR3 = DIM(VAR1);
         VAR4 = DIM(VAR2);
     
         TOTAL_VAR = SUM(VAR3,VAR4);
         MISS_VAR  = CMISS(OF VAR1[*] VAR2[*]);
         NONM_VAR  = SUM(TOTAL_VAR,-MISS_VAR);
    RUN;

     

    Results
    OBS    COUNT1    COUNT2    COUNT3    COUNT4    COUNT5    COUNT6    VAR3    VAR4      VAR     MISS_VAR    NONM_VAR
    
     1       A         B         C          1         2         3        3       3        6          0           6   
     2       A                   C          .         2         3        3       3        6          2           4   
     3       A                              1         .         3        3       3        6          3           3   
     4                                      .         .         .        3       3        6          6           0

     


    * PROC SQL을 사용하여서 비결측치 관측치 개수 카운트;

     

    SAS Program
    PROC SQL;
      SELECT COUNT(COUNT1) AS VAR_CNT1,
             COUNT(COUNT2) AS VAR_CNT2,
             COUNT(COUNT3) AS VAR_CNT3,
             COUNT(COUNT4) AS VAR_CNT4,
             COUNT(COUNT5) AS VAR_CNT5,
             COUNT(COUNT6) AS VAR_CNT6
      FROM   COUNTA;
    QUIT;

     

    Results
    OBS    VAR_CNT1    VAR_CNT2    VAR_CNT3    VAR_CNT4    VAR_CNT5    VAR_CNT6
    
     1         3           1           2           2           2           3

     


    * PROC SUMMARY 를 사용하여서 수치형 변수에 대한 비 결측치 관측치 개수 카운트;

     

    SAS Program
    PROC SUMMARY DATA=COUNTA;
         VAR _NUMERIC_;
         OUTPUT OUT=COUNTA_2(DROP=_:) N=;
    RUN;

     

    Results
    OBS    COUNT4    COUNT5    COUNT6
    
     1        2         2         3

     


      --------------------------------------------  

     

    엑셀(EXCEL)과 SAS 함수(SAS Function) 비교 리스트 링크

     

    SAS 함수(SAS Function) 리스트 링크
    반응형

    댓글