일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Artificil Intelligence
- DeepLearning
- tensorflow
- Andrej Karpathy
- 번역
- 꿈
- neural networks
- 질문
- 강화학습
- tutorials
- machine learning
- 행복
- 딥러닝
- deep learning
- 한국어
- Reinforcement Learning
- 머신러닝
- 답변
- openai
- SQL
- TensorFlow Tutorials
- 인공지능
- 신경망
- Hvass-Lab
- 사랑
- cs231n
- SAS
- Tutorial
- 매크로
- 세상
- Today
- Total
Economics & Deeplearning
날짜관련 질문해 봅니다! 본문
안녕하세요^^?
또 도움 받고자 들렸습니다.
시작일 | 종료일 | |
a | 2009.01.01 | 2010.04.02 |
a | 2008.01.01 | 2008.12.31 |
a | 1998.02.01 | 2008.01.01 |
b | 1998.02.01 | 2005.12.31 |
c | 2009.01.01 | 9999.12.31 |
c | 2008.01.01 | 2008.12.31 |
c | 2003.02.01 | 2008.01.01 |
이 것이 자료이고
이 자료를 이용해
시작일 | 종료일 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | 2005 | 2006 | 2007 | 2008 | 2009 | 2010 | 2011 | 2012 | 2013 | |
a | 2009.01.01 | 2010.04.02 | n | n | n | n | n | n | n | n | n | n | n | y | y | n | n | n |
a | 2008.01.01 | 2008.12.31 | n | n | n | n | n | n | n | n | n | n | y | n | n | n | n | n |
a | 1998.02.01 | 2008.01.01 | y | y | y | y | y | y | y | y | y | y | n | n | n | n | n | n |
b | 1998.02.01 | 2005.12.31 | y | y | y | y | y | y | y | y | n | n | n | n | n | n | n | n |
c | 2009.01.01 | 9999.12.31 | n | n | n | n | n | n | n | n | n | n | n | y | y | y | y | y |
c | 2008.01.01 | 2008.12.31 | n | n | n | n | n | n | n | n | n | n | y | n | n | n | n | n |
c | 2003.02.01 | 2008.01.01 | n | n | n | n | n | y | y | y | y | y | n | n | n | n | n | n |
이렇게 만들고
최종적으로는
a 회사 b 회사 c회사 각각 하나씩 만들고 싶답니다...ㅠㅠ
이거.. 아무리 생각해도 잘 답이 안나와서요;
혹시 도와주실 수 있으실까요?
시작일 종료일 날짜 변수로 만드는 방법은 대강 알고있지만
나머지는 어찌해야 좋을 지 모르겠습니다.
ㅠㅠ
추신
다시보니 위에 엑셀표가 길어서 짤리네요.
최종적으로는 2013년 파일까지 만들 예정입니다.
여기서 복잡해 지면 분기별로 들어갈 예정인데.. 거기까지도 혹시 알려주실 수 있으시면 감사드립니다.
꼭 부탁드릴게요!!!
======================================================================================================================
회사 합쳐서요 end 의 년도를 첫번째 관찰치의 년도로 바꿨습니다.
프로그램 자체는 매크로가 어렵다고 하셔서, sasmaster 님이 작성하신걸로 했구요.
temp1로 회사별 처음과 끝 년도만 맞춰줬어요 ㅎㅎ
data temp;
input id $ start : $10. end : $10.;
cards;
a 2009.01.01 2010.04.02
a 2008.01.01 2008.12.31
a 1998.02.01 2008.01.01
b 1998.02.01 2005.12.31
c 2009.01.01 9999.12.31
c 2008.01.01 2008.12.31
c 2003.02.01 2008.01.01
;run;
proc sort;by id; run;
/* 이부분이 회사 합치는 부분입니다. */
data temp1 (drop=first endyear);
set temp;
by id;
if first.id =1 then do; first=1; endyear= substr(end,1,4); retain endyear; end;
if last.id=1 then substr(end,1,4)=endyear;
if last.id=1;
run;
data new;
length y1998 - y2013 $1;
set temp1;
ystart = input(scan(start,1,'.'),4.);
yend = input(scan(end,1,'.'),4.);
array yearflag (*) y1998 - y2013;
do i = 1 to dim(yearflag);
if ystart <= i + 1997 <= yend then yearflag(i) = 'Y';
else yearflag(i) = 'N';
end;
run;
'SAS > SAS 질문과 답변' 카테고리의 다른 글
어떤 PROC문인지 해석 좀 부탁드립니다 ㅠㅠ (0) | 2016.02.20 |
---|---|
변수값을 끌어와서 데이터셋 이름을 바꾸려면 어떻게 할까요? (0) | 2016.02.20 |
한변수 쪼개기 (0) | 2016.02.20 |
options mprint 질문 (0) | 2016.02.20 |
sas 시간 계산 관련 질문 드립니다 -왕초보 (0) | 2016.02.20 |