BookmarkSubscribeRSS Feed
trekvana
Calcite | Level 5
hello all,

how can I augment a vector or matrix with proc iml?

for example, lets say i have a vector x={1,2} and I want to augment x to a 4x1 vector with missing value indictor (.) in positions 2 and 3. in other words i want x=(1, . , . , 2}. is this possible to do??

pretty much i have an x vector and i also have an index vector (i={2,3} in this example) with the positions i want to include the (.) character.
2 REPLIES 2
Rick_SAS
SAS Super FREQ
The easiest way is to allocate a matrix of missing values and then fill in the nonmissing values by using subscripts. Suppose your data look like this:

N = 4; /** number of rows after including missing values **/
MissingIdx = {2, 3}; /** indices of rows that contain missing **/
x = {1,2}; /** data values **/

The hard part is that you need to know the indices of the NONmissing observations, which you can find by using the SETDIF function. The function is explained at
http://support.sas.com/documentation/cdl/en/imlug/59656/HTML/default/langref_sect241.htm

NMidx = setdif(1:N, MissingIdx); /** find the indices for nonmissing values **/
newX = repeat(., N); /** create answer vector with all missings **/
newX[NMidx] = x; /** assign nonmissing values in the specified locations **/
print newX;
trekvana
Calcite | Level 5
Thanks Rick!

SAS INNOVATE 2024

Innovate_SAS_Blue.png

Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

Register now!

Multiple Linear Regression in SAS

Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.

Find more tutorials on the SAS Users YouTube channel.

From The DO Loop
Want more? Visit our blog for more articles like these.
Discussion stats
  • 2 replies
  • 996 views
  • 0 likes
  • 2 in conversation