ADIF

POTAログの提出はADIF形式

ADIF形式とはアマチュア無線界で利用されているログのフォーマットで、ロギングツール間でデータ交換したりログ提出したりする際に用いられる。

ADIF形式はロギングツールがあると便利

必要という訳ではないが、事実上はロギングツールから吐き出されるため。

ただし、Linux用のツールは限られる。日本ではHAMLOGがスタンダードになっている。

Fast Log Entryを使う

FLEcliというツールを使うと、かなり適当に入力したログのテキストファイルからADIFファイルを生成してくれる。

ネット上のツールを使う

FastLogEntryと同じようなファイルを作り、ファイル変換ツールを使って読み込むとエラー箇所を教えてくれる。

エディタに戻ってファイルを修正すると最後にADIF用に整形されたデータが完成する。

注意点は時刻がUTCなので入力したままでは使えない。

CSVの生成ボタンを押すとZIPファイルがダウンロードできるが、その中に色々なフォーマットで作られたログが入っている。

adiの拡張子が付けられたファイルがADIFなので、これをPOTAのログアップロードサイトにDrag&Dropするとアップロードが終わる。

Rでやる方法

r-wakalangでeitsupiさんに教えていただいた。

取り急ぎメモ。

library(dplyr, warn.conflicts = FALSE)
library(tidyr)
library(stringr)
df <- tibble(
 Name = c("Taro", "Hanako", "Jiro"),
 Sex = c("M", "F", "M"),
 Height = c("175", "150", "159"),
 Weight = c("65kg", "45kg", "50kg")
)
df |>
 mutate(id = row_number()) |>
 pivot_longer(cols = !id) |>
 mutate(
   name = str_to_upper(name),
   length = str_length(value),
   out = str_glue("<{name}:{length}>{value} ")
 ) |>
 summarise(out = str_c(out, collapse = "") |> str_c("<EOR>"), .by = id) |>
 select(!id)