## Programming Tips

Strengthen your programming skills with tips and techniques from the experts

0
SAS Enterprise Guide에서 Github 연결하기

SAS Enterprise Guide(이하 SAS EG)의 최근 버전에서는 기존의 폴더를 통한 접근뿐만 아니라 GitHub 레파지토리를 등록하여 프로그램을 실행, 수정, 관리할 수 있습니다. 회사나 개인 용도로 GitHub을 사용하고 있을 경우, SAS EG에 레파지토리를 등록하여 사용이 가능합니다. 기존에 SAS EG와 GitHub을 사용하는 분이라면 EG를 통해서 좀 더 효율적이고 편리하게 작업을 하실 수 있습니다.

0
Bivariate normal probability in SAS

A previous article discussed how to compute probabilities for the bivariate standard normal distribution. The standard bivariate normal distribution with correlation ρ is denoted BVN(0,ρ). For any point (x,y), you can use the PROBBNRM function in SAS to compute the probability that the random variables (X,Y) ~ BVN(0,ρ) is observed

0
Bivariate normal probability in SAS: Rectangular regions

This article shows how to use SAS to compute the probabilities for two correlated normal variables. Specifically, this article shows how to compute the probabilities for rectangular regions in the plane. A second article discusses the computation over infinite regions such as quadrants. If (X,Y) are random variables that are

0
Data visualization tip: Plot rates, not counts

Plot rates, not counts. This maxim is often stated by data visualization experts, but often ignored by practitioners. You might also hear the related phrases "plot proportions" or "plot percentages," which mean the same thing but expresses the idea alliteratively. An example in a previous article about avoiding alphabetical ordering

Programming Tips
0
A tip for moving SAS Visual Analytics reports in SAS Viya 4 between SAS Viya environments

In SAS Viya 4 you can create Reports in SAS Visual Analytics that you may want to move around between machines. What if you want copy a report for example from a development environment folder to a production environment folder? You may want to work on the report in one system before putting it onto a final system and making it generally available. Or you may want to have a backup copy saved for recovery purposes. This blog post provides an updated description of how to easily save off SAS Visual Analytics report content to a file and easily move it between machines.

0
On resizing an array when an index is out of bounds

Converting a program from one language to another can be a challenge. Even if the languages share many features, there is often syntax that is valid in one language that is not valid in another. Recently, a SAS programmer was converting a program from R to SAS IML. He reached

0
파라미터(Parameter)란 무엇인가? – 시리즈 ①

SAS Visual Anaytics(이하, VA)를 사용할 때, 리포트의 형태를 고정하고 변수만 변경하면서 그래프 및 값들이 바뀌는 결과를 확인할 수 있으면 더 효율적이지 않을까 생각해 본 적이 있으신가요? VA에서 파라미터를 활용하면 가능합니다. 파라미터의 활용법을 다루기 전에 전반적인 이해를 돕고자 파라미터가 무엇인지, 어떻게 사용하는 것인지 등에 대한 내용을 먼저 살펴보고자 합니다. 이번 블로그

0
Standard errors for maximum likelihood estimation

In several previous articles, I've shown how to use SAS to fit models to data by using maximum likelihood estimation (MLE). However, I have not previously shown how to obtain standard errors for the estimates. This article combines two previous articles to show how to obtain MLE estimates and the

0
The distribution of the sample median for normal data

A previous article shows how to use Monte Carlo simulation to approximate the sampling distribution of the sample mean and sample median. When x ~ N(0,1) are normal data, the sample mean is also normal, and there are simple formulas for the expected value and the standard error of the

0
The distribution of the sample median

An elementary course in statistics often includes a discussion of the sampling distribution of a statistic. The canonical example is the sampling distribution of the sample mean. For samples of size n that are drawn from a normally distribution (X ~ N(μ, σ)), the sample mean is normally distributed as

0
Quantiles of the generalized birthday problem

A previous article discusses the birthday problem and its generalizations. The classic birthday problem asks, "In a room that contains N people, what is the probability that two or more people share a birthday?" The probability is much higher than you might think. For example, in a room that contains

0
The generalized birthday problem

The birthday-matching problem (also called the birthday paradox or simply the birthday problem), is a classic problem in probability. Simply stated, the birthday-matching problem asks, "If there are N people in a room, what is the chance that two of them have the same birthday?" The problem is sometimes called

0
컴퓨터가 사물을 보는 방법, CNN 실습 – 3편

지난 포스팅(컴퓨터가 사물을 보는 방법 1편, 2편)에서는 CNN(Convolution Neural Network)에서 사용될 수 있는 다양한 기법들과 함께 CNN의 학습이 어떤 방식으로 이루어지는지 알아보았습니다. CNN은 데이터(특히 이미지 데이터)에 합성곱, 풀링, 패딩 등의 작업을 거쳐 특징을 추출한 후 회귀 또는 분류를 수행하는 딥러닝 모델입니다. 오늘 포스팅에서는 지금까지 배운 기법들을 SAS Viya에서 구현하는 실습을

0
On the evaluation of the function exp(x) - 1

Recently I wrote about numerical analysis problem: the accurate computation of log(1+x) when x is close to 0. A naive computation of log(1+x) loses accuracy if you call the LOG function, which is why the SAS language provides the built-in LOG1PX for this computation. In addition, I showed that you

0
Approximate functions by using Taylor series and rational functions

SAS supports a special function for the accurate evaluation of log(1+x) when x is near 0. The LOG1PX function is useful because a naive computation of log(1+x) loses accuracy when x is near 0. This article demonstrates two general approximation techniques that are often used in numerical analysis: the Taylor

0
SAS Viya 4의 클라우드 분석 서비스(CAS) 라이프 사이클

SAS는 2020년 1월, LTS 2020.1 버전의 SAS Viya 4를 출시했습니다. SAS Viya 4는 기존 SAS의 솔루션인 SAS 9, SAS Viya 3.5 버전과는 달리 완전한 클라우드 네이티브 버전의 솔루션입니다. 오늘 포스팅에서는 클라우드 네이티브 SAS Viya 4의 서비스인 CAS(Cloud Analytics Service, 이하 CAS)의 라이프 사이클에 대해서 알아보겠습니다. 1. CAS란 무엇일까요? CAS는 고성능

0
Functions for continuous probability distributions in SAS

The documentation for Python's SciPy package provides a table that concisely summarizes functions that are associated with continuous probability distributions. This article provides a similar table for SAS functions. For more information on the CDF, PDF, quantile, and random-variate functions, see "Four essential functions for statistical programmers." SAS functions for

0
Use design matrices to analyze subgroups in SAS IML

A previous article shows ways to perform efficient BY-group processing in the SAS IML language. BY-group processing is a SAS-ism for what other languages call group processing or subgroup processing. The main idea is that the data set contains several discrete variables such as sex, race, education level, and so