BiPで標準化したデータをMovebankで読み込みやすいフォーマットに変換するプログラムです。Movebank は現在、世界最大のバイオロギングデータベースです。BiPへ登録したデータを同時にMovebankへ登録(また、その逆にMovebank→BiPへも)することでデータを共有する幅が広がります。
BiPとMovebankのフォーマットでは書式や用語が異なるため、そのままでは読むことができません。本スクリプトでは、BiPフォーマットのデータをMovebankで読み込みやすいフォーマットへ変換します。
BiPではZone情報を含む日時フォーマット(例: 2021-08-24 19:13:27.040000+00:00)になっていますが、MovebankではZone情報を含まない世界標準時刻 (例: 2021-08-24 19:13:27.040) となっています。そのほか、小数点以下の桁数の違いなどMovebankで読み込めるように日時フォーマットを変換します。
また、Movebankでは各センサーデータ内に個体ID (Animal Id) とタグID (Tag Id)を含んだ方が登録しやすくなります。
pythonコード(convert_movebank_format.py)とデータ (data.csv)* をダウンロードしてください。
*BiPでOpenデータとなっているKatsufumi Sato (Atmosphere and Ocean Research Institute, University of Tokyo) 提供のオオミズナギドリのデータ (title: 9B41870_TS-AxyTrek_Movebank_YNo.6_release20210824) の一部を使用しています。AxyTrekで得られたGPSのほか三軸加速度情報を含みます。BiPからMovebank用語辞書(Movebank Atttibute Dictonary)へ対応した用語へカラム名を変換します。
BiPからMovebankで読み込み可能なセンサーデータは以下の29 項目です:
latitude, longitude, height_above_mean_sea_level, ground_speed, number_of_satellites, hdop, vdop, argos-quality, ninja-accruacy-of-horizontal-position, ninja-accruacy-of-vertical-position, horizontal_speed_east, vertical_speed_downward, acceleration_x, acceleration_y, acceleration_z, acceleration_longitudinal, acceleration_lateral, acceleration_dorso_ventral, magnetic_field_longitudinal, magnetic_field_lateral, magnetic_field_dorso_ventral, angular_velocity_pitch, angular_velocity_roll, angular_velocity_yaw, pressure, depth, temperature, light, odba
いまのところ、air-speed (対空速度), water-speed (対水速度), salinity (塩分) についてはMovebank側で受け入れる項目がないため登録できません。
実行方法
Pythonのプロンプト上でそれらを保存したディレクトリに移動して、以下のコマンドを実行します。
python convert_movebank_format.py
コードを実行中に以下の情報を入力します。
- ファイル名(拡張子CSVを除く、例: data)
- Animal Id, Tag IdをCSVファイルに含める場合には、“y” と入力
- Animal Id を入力(例:
9B41870
) - Tag Idを入力 (例: YNo.6)
(base) C:\>Python convert_movebank_format.py 変換元のファイル名(拡張子なし)を入力してください: data Animal Id, Tag IdをCSVファイルに含めますか? (y/n): y Animal Id を入力してください: 9B41870 Tag Id を入力してください: YNo.6 変換完了!Movebank用のCSVファイルを data_movebank.csv に保存しました。
変換されたファイル (data_movebank.csv) が保存され、先頭2行のデータがプロンプト上に表示されます。
変換完了!Movebank用のCSVファイルを data_movebank.csv に保存しました。 === 変換後のデータ(先頭2行) === timestamp location lat location long acceleration y acceleration x acceleration z barometric pressure external temperature height above mean sea level ground speed \ 0 2021-08-24 19:13:27.000 39.39811 142.01237 -1.84428 -2.14839 11.65428 994.82 23.8 -2.0 0.0 1 2021-08-24 19:13:27.040 NaN NaN -2.72718 -1.85409 13.42008 NaN NaN NaN NaN gps satellite count sensor type animal id tag id 0 3 gps 9B41870 YNo.6 1 <NA> acceleration 9B41870 YNo.6
Movebankによる読み込み
Movebankでユーザーアカウントを作成し、データをUploadする先のStudyを作成してください。Movebankへのデータ登録については Add data to Movebank をご覧ください。
Studies→Upload→Import DataからUploadするデータの種類を選択してください。緯度経度情報を含む場合は”GPS data”→”custom GPS data”、含まない場合は”Other accessory data collected by your tags”を選択し、変換したファイル(例: data_movebank.csv)を選択して、Uploadしてください。

上段に表示された各カラムをクリックして、読み込むデータを選択します。問題なく変換されていれば、下段に適切なカラム名で表示されます。Sensor TypeにはGPSと加速度などのそれ以外のデータタイプに分かれています。最後に、Animal IdとTag Idを選択して、Finishをクリックします。

その後にEdit Animalで個体情報、Edit Tagでタグ情報をそれぞれ入力し、Edit DeploymentでUploadしたファイルとそれらを統合します。この作業はBiPのStandardizeに相当しますが、BiPとMovebankで用語 (Attributes)が異なるのに注意してください。Movebank Attributes からとBiPで使われている用語を比較しました。入力の際には以下のMovebank_BiP_atributes.csvをダウンロードしてご参考にしてください。ダウンロードが始まらない場合は、右クリックから「名前を付けてリンク先を保存」を選んでダウンロードしてください。
