회사에서 SAS를,
성대 대학원에서 SAS 툴을 제공하고 있다.
(SAS는 비싸다..)
쿼리 공부를 좋아하는 편인데,
Oracle Toad를 사용하다
SAS 쪽으로 공부방향을 틀어보았다.

SAS와 SQL을 활용한 데이터 분석 예제들을 몇 가지 제공해드리겠습니다.
1. 기본적인 데이터 조회 예제
SAS:
```sas
/* SAS 데이터셋 조회 */
data sales;
input Product $ Region $ Sales;
datalines;
Apple Northeast 1000
Orange West 1500
Banana South 1200
;
run;
/* 기본 프로시저를 사용한 데이터 출력 */
proc print data=sales;
run;
/* SQL 프로시저 사용 */
proc sql;
select * from sales;
quit;
```
SQL:
```sql
CREATE TABLE sales (
Product VARCHAR(50),
Region VARCHAR(50),
Sales NUMERIC
);
INSERT INTO sales VALUES
('Apple', 'Northeast', 1000),
('Orange', 'West', 1500),
('Banana', 'South', 1200);
SELECT * FROM sales;
```
2. 데이터 필터링 및 집계
SAS:
```sas
/* 고급 필터링 및 집계 */
data work.high_sales;
set sales;
where Sales > 1200;
run;
proc sql;
select Region,
sum(Sales) as Total_Sales,
avg(Sales) as Avg_Sales
from sales
group by Region
having sum(Sales) > 1000;
quit;
```
SQL:
```sql
-- 필터링된 데이터 조회
SELECT * FROM sales WHERE Sales > 1200;
-- 지역별 판매 집계
SELECT
Region,
SUM(Sales) as Total_Sales,
AVG(Sales) as Avg_Sales
FROM sales
GROUP BY Region
HAVING SUM(Sales) > 1000;
```
3. 다중 데이터셋 결합
SAS:
```sas
/* 데이터셋 병합 */
data employees;
input EmpID Name $ Department $;
datalines;
1 John Sales
2 Jane Marketing
3 Bob IT
;
run;
data salaries;
input EmpID Salary;
datalines;
1 50000
2 60000
3 70000
;
run;
/* 데이터셋 병합 */
proc sql;
select e.EmpID, e.Name,
e.Department, s.Salary
from employees e
inner join salaries s
on e.EmpID = s.EmpID;
quit;
```
SQL:
```sql
CREATE TABLE employees (
EmpID INT,
Name VARCHAR(50),
Department VARCHAR(50)
);
CREATE TABLE salaries (
EmpID INT,
Salary NUMERIC
);
INSERT INTO employees VALUES
(1, 'John', 'Sales'),
(2, 'Jane', 'Marketing'),
(3, 'Bob', 'IT');
INSERT INTO salaries VALUES
(1, 50000),
(2, 60000),
(3, 70000);
-- 테이블 조인
SELECT
e.EmpID,
e.Name,
e.Department,
s.Salary
FROM employees e
INNER JOIN salaries s ON e.EmpID = s.EmpID;
```
4. 통계 분석 예제 (SAS)
```sas
/* 통계 분석 */
data health;
input Age Weight Height;
datalines;
25 70 175
30 80 180
35 75 172
40 85 178
;
run;
/* 기술 통계 */
proc means data=health;
var Age Weight Height;
run;
/* 회귀 분석 */
proc reg data=health;
model Weight = Height;
run;
```
오라클과 차이가 분명 존재한다.
그리고 SQL말고도 통계 관련 분석도 가능하다.
데이터사이언스융합전공에 도움이 크게 될 것 같다.
SAS는 의학 통계 쪽에 자주 사용된다고 한다.
'개인 프로젝트 > 데이터 분석 프로젝트' 카테고리의 다른 글
[Tableau] BI 신병훈련 5일차 과제 (0) | 2025.01.20 |
---|---|
[Tableau] BI 신병훈련 4일차 과제 (0) | 2025.01.19 |
[Tableau] BI 신병훈련 3일차 과제 (0) | 2025.01.19 |
[데이터사이언스] 선형대수학 개념 정리 (0) | 2025.01.19 |
[Tableau] BI 신병훈련 2일차 과제 (0) | 2025.01.18 |
댓글