난 당신이, 당신은 NAME "VLOOKUP"에 의해 데이터 집합을 전화하는거야 뭘 하려는지를 참조하십시오. Excel에서 해당 조회 기능을 사용하는 일부 사용자가 혼란스러워하는 이유가 있습니다.
오케이, SAS : 이 작업은 SAS 입력 명령문 (또는 PROC IMPORT, 그 문제에 대한)이 각 행에서 동일한 순서로 필드를 기대하기 때문에 일반 SAS 읽기에서 프레임하기가 어렵습니다. 길이가 다른 경우. 이제 당신은 XML에 대해 더 많이 상기시켜줍니다.
첫 번째 질문 - 행의 변수가 순서가 맞지 않습니까? 즉, 다음과 같이 표시됩니다.
r14$1r15$Joer16$Geography
r15$Susanr14$2r16$Math
r16$Chemistryr14$3r15$Jonathan
그렇지 않으면 구분 기호 문제로 다시 채우십시오. 달러 기호로 구분 된 데이터에 약간의 추가 작업이 있습니다. 당신이 준 예제를 가지고 : 당신이 $ -delimited를 호출 할 경우
r14$1r15$Joer16$Geography
r14$2r15$Susanr16$Math
r14$3r15$Jonathanr16$Chemistry
후 SAS는로보고 :
r14 1r15 Joer16 Geography
r14 2r15 Susanr16 Math
r14 3r15 Jonathanr16 Chemistry
첫 번째 필드가 단지 정크 - 대구의 첫 번째 부분. 마지막 필드는 완벽합니다. 다른 필드는 3 열의 정크가있는 좋은 정보입니다. 이것은 매우 표준화하고 쉽게 청소 할 수 있습니다 ( VAR1 = 1 *의 SUBSTR : 을 - : - 길이의 문자열, 적은 세 가지, 즉 걸릴 숫자 변수의 경우, 마지막 줄을
VARLEN = LEN(VAR0)-3;
VAR1 = substr(VAR0,1,VARLEN);
을 VAR0,1, VARLEN);
data mydata;
infile "./mydatarows.txt" dsd delimiter = '$';
input junk obsnum0 name0 class0;
obslen = LEN(obsnum0)-3;
obsnum1 = 1*substr(obsnum0,1,obslen);
name0 = LEN(name0) - 3;
name1 = substr(name0,1,namelen);
drop junk;
run;
또한 데이터 단계에서 형식 등을 정의해야하지만 이것은 당신에게 괜찮은 출발점을 제공한다 :
그래서 모두 마무리.
정말로 당신이 제안하는 것처럼 그것을 시도하고 싶다면 ... 내가 다시 돌아올 것입니다. 그것은 당신이해야 할 일보다 훨씬 힘든 방법입니다.
'vlookup'이라는 용어를 사용하여 두 개의 데이터 세트를 결합하거나 다른 값을 찾으려면 값을 매치하는 경우 다른 용어를 사용하십시오. 'vlookup '은 특별히 Excel 함수를 말하며 다른 의미 나 사용법이 없습니다. – Joe