분석을 위해 우리는 분석을하기 전에 csv (xls) &에서 원시 데이터를 SAS 데이터 세트로 변환해야합니다.SAS 또는 R에서 원시 데이터 읽기
이제이 원시 데이터에는 일반적으로 이라는 두 가지 문제가 있습니다. 1. 열 순서가 변경되는 경우가 있습니다. 따라서 이전 기간에 변수 A, B, C 순으로 열이있는 경우 B, C, A로 바뀔 수 있습니다. 2. "#"또는 " . "또는"some letters "등 이제 SAS로 읽어 오기 전에 원시 데이터를 먼저 정리해야합니다. 이것은 상당한 시간이 걸립니다. 데이터를 읽기 전에 SAS 시스템 자체의 데이터를 정리할 수있는 방법이 있습니까? SAS 코드로 데이터를 수정할 수 있다면 상당한 시간을 절약 할 수 있습니다.
기간 : 1 :
다음은 예제 내가이 형식으로 Data1.csv의 데이터를 얻었다. 숫자 B 인 B 열에는 "#"& "이 (가) 있습니다." 그리고 colummn C (숫자이기도 함)는 "g"입니다. PROC IMPORT 또는 Infile 문을 사용하여 Data1.csv를 가져 오면 B 열 & C의 이러한 외부 요소는 그대로 유지됩니다. 여기에있는 질문은 그것을하는 방법입니다. STATEMENT를 사용할 수 있습니다. 그러나 문제는 "#", ".", "g"대신에 "$", "h"등과 같은 다른 외부 요소를 가질 수있는 너무 많은 외부 요소가 있다는 것입니다. 우리가 가질 수있는 방법이 있다면 &을 감지하는 코드는 SAS에서 원시 데이터를 가져올 때마다 IF STATEMENT를 사용하여 지정하지 않고 외부 요소를 제거합니다.
A B C
Name1 1 5
Name2 2 6
Name3 3 4
Name4 # g
Name5 5 3
Name6 . 6
기간이 아래에 주어진 내가 DATA2.csv있어이 기간에. INFILE 문을 사용할 때 첫 번째 A는 특정 이름으로 읽은 다음 B는 특정 이름 &, C로 읽어야한다고 지정합니다. 두 번째 기간에는 데이터 B가 첫 번째로옵니다. 그래서 SAS가 A 대신 B를 사용하여 데이터를 읽었을 때, 매번 &의 infile 문을 사용하여 데이터를 읽기 전에 이전 단계 데이터로 정렬하는 변수를 확인해야합니다. 변수의 수가 너무 많으므로 이러한 방식으로 열 순서를 확인하는 데 시간이 많이 걸립니다 (& 시간이 지남). SAS가 자동으로 A, &, 그 다음 B &, C 순으로 읽는 SAS 코드가 있습니까?
B A C
1 Name1 5
2 Name2 6
3 Name3 4
# Name4 g
5 Name5 3
. Name6 6
비록 주로 분석 목적으로 SAS를 사용하지만. 그러나 R을 사용하여 데이터를 정리 한 다음 SAS에서 추가 분석을 위해 사용합니다. 그래서 R 코드도 도움이 될 수 있습니다.
감사합니다.
답장을 보내 주셔서 감사합니다. 그러나 문제는 데이터 세트에서 3 가지 외부 요소 만 있다는 것을 보여줍니다. 그러나 각 단계에서 그들은 점점 커지고 있습니다. 이제 모든 외국 요소를 추적하고 코드를 업데이트하는 작업은 시간이 많이 걸립니다. 그래서 자동으로 코드를 작성할 수있는 코드 예제를 요청했습니다. 하지만 당신의 제안에 따라 CSV를 읽으려고 노력할 것입니다. – Beta