다양한 연도 및 월에 대한 여러 사이트 위치에 대한 데이터가 있습니다. 원하는 연도별로 모든 달의 평균을 계산했습니다. 각 월/년에는 자체 파일이 있습니다. 모든 사이트에 해당 월의 데이터가 있는 것은 아니므로 이 경우에는 파일이 존재하지 않습니다. 내가 하려는 것은 각 월/연도 파일을 사용하여 각 사이트에 대한 새 파일을 구축하는 것입니다. 내가 만들려는 파일 구조는 다음과 같습니다.
년도 | 양 | 2월 |
---|---|---|
2002년 | 트리플 엑스 | 트리플 엑스 |
2003년 | 트리플 엑스 | 트리플 엑스 |
2019 | 트리플 엑스 | 트리플 엑스 |
파일의 명명 규칙은 County071-O3-5001-입니다.2002년. 나가-연 이자율.csv.tmp.ext-avg.dat 대용감한연도와 월에 따라 텍스트가 변경됩니다. "월" 및 "연도" 데이터가 누락되는 경우가 있기 때문에 누락된 월 데이터를 설명하기 위해 테이블을 작성하는 방법을 잘 모르겠습니다. 제가 17년 동안 100개가 넘는 사이트를 다루었다는 점을 고려할 때 이를 자동화하는 방법에 대한 제안이 있으면 매우 도움이 될 것입니다.
감사해요
답변1
코드를 작성하지 않고 Perl을 사용하여 가능한 모든 월과 연도에 걸쳐 해당 값을 파일 이름에 삽입하고 파일을 찾을 수 없으면 월/연도 데이터가 0이라고 가정합니다. 다음 달/연도에 계속됩니다.
의사코드:
foreach $year (2001 2002 2003 2004)
foreach $month (Jan Feb Mar Apr Jun Jul Aug Sep Oct Nov Dec)
if (-3 County071-O3-5001-$year).out-$month.csv.tmp.ext-avg.dat) /* test if it exists */
then open it, read it, print it
else /* assume it's zero */
print 0
end