SAS - Định dạng số

SAS có thể xử lý nhiều định dạng dữ liệu số. Nó sử dụng các định dạng này ở cuối tên biến để áp dụng một định dạng số cụ thể cho dữ liệu. SAS sử dụng hai loại định dạng số. Một để đọc các định dạng cụ thể của dữ liệu số được gọi làinformat và một cái khác để hiển thị dữ liệu số ở định dạng cụ thể được gọi là output format.

Cú pháp

Cú pháp cho một thông tin số là:

Varname Formatnamew.d

Sau đây là mô tả về các tham số được sử dụng:

  • Varname là tên của biến.

  • Formatname là tên của tên định dạng số được áp dụng cho biến.

  • w là số cột dữ liệu tối đa (bao gồm các chữ số sau số thập phân và chính dấu thập phân) được phép lưu trữ cho biến.

  • d là số chữ số ở bên phải của số thập phân.

Đọc định dạng số

Dưới đây là danh sách các định dạng được sử dụng để đọc dữ liệu vào SAS.

Định dạng số đầu vào

định dạng Sử dụng
n.

Số cột "n" tối đa không có dấu thập phân.

n.p

Số cột "n" tối đa có dấu thập phân "p".

COMMAn.p

Số cột "n" tối đa có chữ số thập phân "p" loại bỏ mọi dấu phẩy hoặc dấu đô la.

COMMAn.p

Số cột "n" tối đa có chữ số thập phân "p" loại bỏ mọi dấu phẩy hoặc dấu đô la.

Hiển thị định dạng số

Tương tự như áp dụng định dạng trong khi đọc dữ liệu, dưới đây là danh sách các định dạng được sử dụng để hiển thị dữ liệu trong đầu ra của chương trình SAS.

Định dạng số đầu ra

định dạng Sử dụng
n.

Viết số chữ số tối đa "n" không có dấu thập phân.

n.p

Viết số cột "np" tối đa với dấu thập phân "p".

DOLLARn.p

Viết số cột "n" tối đa với chữ số thập phân p, ký hiệu đô la đứng đầu và dấu phẩy ở vị trí thứ nghìn.

Xin lưu ý -

  • Nếu số chữ số sau dấu thập phân nhỏ hơn số định dạng thìzeros will be appended cuối cùng.

  • Nếu số chữ số sau dấu thập phân lớn hơn số định dạng thì chữ số cuối cùng sẽ là rounded off.

Ví dụ

Các ví dụ dưới đây minh họa các tình huống trên.

DATA MYDATA1;
input x 6.; /*maxiiuum width of the data*/
format x 6.3;
datalines;
8722
93.2
.1122
15.116
PROC PRINT DATA = MYDATA1;
RUN;

DATA MYDATA2;
input x 6.; /*maximum width of the data*/
format x 5.2;
datalines;
8722
93.2
.1122
15.116
PROC PRINT DATA = MYDATA2;
RUN;
DATA MYDATA3;
input x 6.; /*maximum width of the data*/
format x DOLLAR10.2;
datalines;
8722
93.2
.1122
15.116
PROC PRINT DATA = MYDATA3;
RUN;

Khi chúng tôi thực thi đoạn mã trên, nó tạo ra kết quả sau:

# MYDATA1.
Obs 	x
1 	8722.0 # Display 6 columns with zero appended after decimal.
2 	93.200 # Display 6 columns with zero appended after decimal.
3 	0.112  # No integers before decimal, so display 3 available digits after decimal.
4 	15.116 # Display 6 columns with 3 available digits after decimal.

# MYDATA2
Obs 	x
1 	8722  # Display 5 columns. Only 4 are available.
2 	93.20 # Display 5 columns with zero appended after decimal.
3 	0.11  # Display 5 columns with 2 places after decimal.
4 	15.12 # Display 5 columns with 2 places after decimal.

# MYDATA3
Obs 	x
1 	$8,722.00 # Display 10 columns with leading $ sign, comma at thousandth place and zeros appended after decimal.
2 	$93.20    # Only 2 integers available before decimal and one available after the decimal.
3 	$0.11	  # No integers available before decimal and two available after the decimal.
4 	$15.12    # Only 2 integers available before decimal and two available after the decimal.