8.42. julian ユリウス暦変換

  • 書式1: julian(date)

  • 書式2: julian(time)

  • 書式3: julian2d(num)

  • 書式4: julian2t(num)

書式1,2では、日付 \(date\) もしくは時刻 \(time\) をユリウス通日に変換する。 逆に書式3,4では、ユリウス通日を日付型もしくは時刻型に変換する。 ここで、日付型が与えられたときは、その日の最初の時刻である 00:00:00 として計算される。

利用例

importと入力データ(CSV)の準備

 1import nysol.mcmd as nm
 2
 3with open('dat1.csv','w') as f:
 4  f.write(
 5'''id,date
 61,20000101
 72,20121021
 83,
 94,19700101
10''')
11
12with open('dat2.csv','w') as f:
13  f.write(
14'''id,time
151,20000101000000
162,20121021111213
173,
184,19700101000100
19''')

基本例

日付型の date 項目を julian 関数でユリウス通日に変換し、 julian2d 関数でまたもとに戻す。

1nm.mcal(c='julian($d{date})', a='julian', i="dat1.csv", o="rsl1.csv").run()
2nm.mcal(c='julian2d(${julian})', a='date2', i="rsl1.csv", o="rsl2.csv").run()
3### rsl1.csv の内容
4# id,date,julian
5# 1,20000101,2451545
6# 2,20121021,2456222
7# 3,,
8# 4,19700101,2440588

時刻型も同様

1nm.mcal(c='julian($t{time})', a='julian', i="dat2.csv", o="rsl3.csv").run()
2nm.mcal(c='julian2t(${julian})', a='time2', i="rsl3.csv", o="rsl4.csv").run()
3### rsl2.csv の内容