Rate this post

Array trong SAS là một công cụ mạnh mẽ để xử lý dữ liệu theo nhóm hoặc chuỗi. Nó cho phép các lập trình viên SAS thực hiện các phép tính trên nhiều biến đồng thời bằng cách sử dụng một tên mảng chung để tham chiếu đến các biến trong mảng đó.

Một mảng trong SAS được định nghĩa bằng cách sử dụng từ khóa ARRAY, theo sau là tên của mảng và danh sách các biến được khai báo trong mảng. Mảng cũng có thể được sử dụng để thực hiện các phép tính số học, tìm kiếm, sắp xếp và xử lý các chuỗi.

Các lập trình viên SAS có thể sử dụng mảng để thực hiện nhiều tác vụ khác nhau, bao gồm:

  • Tính tổng các biến trong một mảng
  • Sắp xếp các biến trong một mảng theo thứ tự tăng dần hoặc giảm dần
  • Tìm kiếm giá trị tối đa hoặc tối thiểu trong một mảng
  • So sánh giá trị của các biến trong một mảng và thực hiện các tác vụ phù hợp.

Việc sử dụng Array trong SAS giúp các lập trình viên thực hiện các tác vụ phức tạp một cách nhanh chóng và hiệu quả hơn, đặc biệt là khi xử lý dữ liệu lớn. Tuy nhiên, cần lưu ý rằng việc sử dụng mảng có thể tốn nhiều tài nguyên hơn so với việc sử dụng biến đơn lẻ, do đó cần cân nhắc khi áp dụng mảng trong các tình huống thích hợp.

Array trong SAS là gì?

Array SAS nhóm các biến tương tự để xử lý bên trong bước dữ liệu. Sau khi Array SAS được định nghĩa, các tác vụ được thực hiện bởi các biến tại các thời điểm khác nhau có thể được thực hiện bằng cách sử dụng một Array duy nhất. Điều này giúp tiết kiệm thời gian và không yêu cầu viết nhiều câu lệnh.

Các bài viết liên quan;

Hãy xem xét, ví dụ SAS Array, một tập dữ liệu tiết kiệm (tiết kiệm) chứa 24 biến hàng tháng trong một năm, 12 biến cho thu nhập (Inc1 – Inc12) và 12 biến cho chi phí (Exp1 – Exp12). Để tính toán khoản tiết kiệm ròng cho mỗi tháng, chương trình SAS cần 12 câu lệnh:

net_sav1 = inc1- exp1;
net_sav2 = inc2- exp2; . . .
.
.
.
.
net_sav3 = inc3- exp3;
net_sav11 = inc11-exp11;
net_sav12 = inc12- exp12;

Phương pháp tính tiết kiệm ròng này được lặp đi lặp lại. Khi số lượng dữ liệu tăng lên, cần có nhiều bản sao kê hơn để tính toán khoản tiết kiệm ròng cho mỗi tháng. Array giúp thực hiện các phép tính này với một vài câu lệnh.

  1. Trong hầu hết các trường hợp, mã được viết bằng Array cũng có thể được viết mà không cần sử dụng Array.
  2. Array cung cấp một phương thức thay thế để tham chiếu đến một biến thay vì sử dụng tên của biến ở nhiều nơi và nhiều thời điểm.

Cú pháp Array SAS

Câu lệnh SAS ARRAY bao gồm từ khóa ARRAY theo sau là tên của Array:

ARRAY array-name[ ];

Tên Array SAS có thể được theo sau bởi một cặp dấu ngoặc đơn (), dấu ngoặc nhọn {} hoặc dấu ngoặc vuông []. Bằng cách chỉ định một giá trị bên trong dấu ngoặc, chúng ta có thể gán cùng một số biến cho Array.

Ví dụ – sử dụng cùng một ví dụ được sử dụng ở trên, chúng ta có thể tạo thu nhập Array và thêm 12 biến vào đó, một biến cho mỗi tháng, thay vì viết câu lệnh cho 12 biến đó.

Trong câu lệnh này, thu nhập Array có 12 biến (inc1 – inc12) được liên kết với nó.

Xem thêm NumPy Copies và Views

Ví dụ về khai báo Array SAS

# Khai báo một Array có độ dài 4 được đặt tên là age với các giá trị.

ARRAY age[4] (11 1 2 62);

# Khai báo một Array có độ dài 8 màu được đặt tên với các giá trị bắt đầu từ chỉ số 0.

ARRAY colors (0:8) A B C D E F G H I;

# Khai báo một Array có độ dài 5 sách được đặt tên chứa các giá trị ký tự.

ARRAY books(1:5) $ b1-b5;

# Khai báo một Array có độ dài cần thiết tùy thuộc vào số lượng giá trị được cung cấp.

ARRAY ANS(*) A1-A10;

Những điểm cần nhớ

Có một số điểm quan trọng mà bạn nên nhớ khi làm việc trên Array SAS. Các biến SAS được liên kết với một Array có các đặc điểm nhất định:

  1. Tất cả các biến được xác định bên trong một Array phải có cùng kiểu. Chúng có thể là biến số hoặc ký tự.
  2. Nếu các biến là biến ký tự, thì phải đặt dấu đô la ($) sau phần xác định Array.

Thí dụ –

array my_name[3] $ first middle last;

Theo mặc định, các biến bên trong Array có độ dài 8 byte. Để chỉ định độ dài khác cho các biến, hãy bao gồm độ dài mong muốn sau $ cho Array ký tự và sau dấu ngoặc cho Array số.

Xem thêm:

Toán tử Array SAS

Ở đây, chúng ta nói về hai loại toán tử Array trong SAS: toán tử OF và toán tử IN.

Toán tử trong Array OF

Chúng tôi sử dụng toán tử OF khi một phép tính được thực hiện trên tất cả các biến hoặc phần tử của Array.

DATA example_OF;
INPUT A1 A2 A3 A4;
ARRAY A(4) A1-A4;
A_SUM=SUM(OF A(*));
A_MEAN=MEAN(OF A(*));
A_MIN=MIN(OF A(*));
DATALINES;
21 4 52 11
96 25 42 6;
RUN;
PROC PRINT DATA=example_OF;
RUN;

Đầu ra:

Toán tử SAS IN

Nếu chúng ta muốn tìm kiếm một giá trị cụ thể trong Array và kiểm tra sự hiện diện của nó, chúng ta có thể sử dụng toán tử IN. Trong ví dụ dưới đây, chúng tôi sẽ kiểm tra tính khả dụng của màu “Hồng” trong dữ liệu. Từ khóa IN phân biệt chữ hoa chữ thường.

DATA in_example;
INPUT A1 $ A2 $ A3 $ A4 $;
ARRAY COLOURS(4) A1-A4;
IF 'yellow' IN COLOURS THEN available='Yes'; ELSE available='No';
DATALINES;
Orange-pink violet yellow;
RUN;
PROC PRINT DATA=in_example;
RUN;

Đầu ra:

Bản tóm tắt

Trong Hướng dẫn về Array SAS này, chúng tôi đã nghiên cứu các khía cạnh khác nhau của Array SAS, tầm quan trọng của chúng trong việc cải thiện hiệu quả của mã, giảm bớt sự dư thừa và cách làm cho chương trình của chúng ta dễ dàng và có tổ chức hơn. Vì vậy, hãy theo dõi để biết thêm thông tin cập nhật.

Xem thêm Tìm hiểu về biến trong SAS

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now