2016-03-24 20 views
0

Biçimi, SAS tablosundaki tek bir hücreye değiştirmem gerekiyor. Yani, hücrenin bulunduğu sütun, best12. biçimindedir, ancak hücrede bir tarih olduğu belirtiliyor, bunun için YYMMDD10. 'u kullanmak istiyorum. Nasıl giderebilirim?SAS tablosunda format tek hücreye nasıl değiştirilir

Şimdiden teşekkürler.

+0

Tarih içermeyen hücrelerde hangi değerler vardır? İstediğinizi yapmak için özel bir format oluşturmak mümkündür, ancak bu yalnızca belirli durumlarda çalışacaktır, örn. Tarih değerleri ve tarih olmayan değerler arasında çakışma yoksa – Longfish

cevap

0

Yalnızca FORMAT'ı tüm sütunu ile ilişkilendirebilirsiniz. Karışık tipteki hücrelerin farklı şekilde biçimlendirilmesini istiyorsanız, PUT (işlev) değerlerini içine alan bir karakter sütununa ihtiyacınız vardır.

Farklı bir biçimi bir sütun kullanımıyla ilişkilendirmek için.

proc datasets; 
    modify data-set-name; 
    format variables new-format.; 
    run; 
    quit; 
0

Veriler izin verirse neler yapabileceğinize dair bir örnek. Verilerinizdeki en erken tarihin 1 Ocak 2000 olduğunu varsayalım. Bu, SAS'taki 14,610 numaralı numarada (1 Ocak 1960'dan bu yana geçen gün sayısı) saklanır. Hiçbir olmayan tarih değerleri bu sayıyı aşması nedenle o zaman best12. olarak yukarı 14,610 kadar tüm değerleri biçimlendirerek hedefe ulaşmak ve bu daha tüm değerler büyük olarak yymmdd10.

proc format; 
value dtfmt low - 14609 = [best12.] 
       14610 - high = [yymmdd10.] 
; 
run; 

data want; 
input num; 
format num dtfmt.; 
datalines; 
10 
20 
20514 
30 
; 
run; 
0

Sen kontrol etmek IF durumda SUBSTR() uygulayabilirsiniz İlk karakter ve değişkeninizi buna göre biçimlendirin .. INPUT() veya PUT()