2017-04-19 9 views
0

일부 데이터를 SQL을 통해 SAS로 가져 왔습니다. 변수의 길이를 변경하여 데이터 집합의 효율성과 저장성을 향상시키고 싶지만 변수의 최대 길이를 알 수는 없습니다.변수 내의 문자열 길이 계산 SAS

예를 들어 "Forename"변수가 있습니다. 길이는 현재 $ 300로 설정되어 있습니다. 나는 이것이 너무 큽니다. 그러나 어떤 데이터를 잘라 버릴 경우를 대비하여 추측을하고 싶지는 않습니다. .? 나는 다음과 같은 이름을 가지고, 어떻게 내가 $ 10의 길이를 재설정 할 필요가 있음을 해결할 수 :

Obs Forename Total Character Length 
1 Tim   3 
2 Gary  4 
3 Samantha 8 
4 Christopher 10 

답변

1

이 정말 동적 대답은 아니지만 꽤 간단합니다. Forename 변수의 최대 길이를 가져옵니다.

proc sql; 
select max(length(forename)) from have; 
quit; 

이것은 최대 길이를 반환 할 뿐이며 다음 데이터 단계에 연결합니다.

data want; 
length forename $11; 
set have; 
run; 
+0

완벽하고 멋지고 간단합니다. - 감사합니다! – amy