Sas'ta anydigit işlevi nasıl kullanılır?


Belirli bir dizedeki ilk basamağın konumunu döndürmek için SAS’taki ANYDIGIT işlevini kullanabilirsiniz.

Bu işlev aşağıdaki temel sözdizimini kullanır:

HERHANGİ BİR SAYI(ifade, [başlangıç])

Altın:

  • ifade : Aranacak dize
  • başlangıç (isteğe bağlı) : Aramanın yapılacağı başlangıç konumu.

Aşağıdaki örnekte bu fonksiyonun pratikte nasıl kullanılacağı gösterilmektedir.

Örnek: SAS’ta ANYDIGIT işlevini kullanma

SAS’ta bir şirketin çeşitli çalışanları hakkında bilgi içeren aşağıdaki veri kümesine sahip olduğumuzu varsayalım:

 /*create dataset*/
data my_data;
    input employeeID $sales;
    datalines ;
54AAF 23
0009A 38
BC18B 40
09:30 12
04429 65
B1300 90
B1700 75
RRHHJ 35
0Y009 40
C6500 23
;
run ;

/*view dataset*/
proc print data =my_data; 

ÇalışanKimliği sütunundaki ilk hanenin konumunu bulmak için ANYDIGIT fonksiyonunu kullanabiliriz:

 /*create new dataset*/
data new_data;
    set my_data;
    firstDigit = anydigit (employeeID);
run ;

/*view new dataset*/
proc print data = new_data;

FirstDigit adı verilen yeni sütun, ÇalışanNo sütunundaki bir rakamın ilk geçtiği konumu görüntüler.

Örneğin:

  • 54AAF’ın ilk rakamı 1 konumundadır.
  • 0009A’nın ilk rakamı 1 konumundadır.
  • BC18B’nin ilk rakamı 3 konumundadır.

Ve benzeri.

Belirli bir çalışan kimliği için rakam yoksa 0 değeri döndürülür.

Aramanın yapılacağı başlangıç konumunu belirlemek için ANYDIGIT işlevindeki başlangıç argümanını da kullanabiliriz.

Örneğin ÇalışanNo sütununda 3. pozisyondan başlayarak ilk rakamın konumunu bulmak için aşağıdaki kodu kullanabiliriz:

 /*create new dataset*/
data new_data;
    set my_data;
    firstDigit = anydigit (employeeID, 3 );
run ;

/*view new dataset*/
proc print data =new_data; 

Rakam arama artık 3 konumunda başladığından, ilk iki konumda yalnızca alfabetik karakter içeren Çalışan Kimliği değerlerinin artık ilkDigit sütununda 0 değerini aldığını unutmayın.

Ek kaynaklar

Aşağıdaki eğitimlerde SAS’taki diğer yaygın işlevlerin nasıl kullanılacağı açıklanmaktadır:

SAS’taki dizelerden özel karakterler nasıl kaldırılır
SAS’ta bir dizedeki karakterler nasıl değiştirilir?
SAS’ta bir karakter değişkeni sayısala nasıl dönüştürülür?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir