/

mwings.parsers.act モジュール

mwings.parsers.act

act から送信されたデータを表すパケットを解釈するパーサと、そのデータを扱います。

src/mwings/parsers/act.py

PacketParser

act から送信されたデータを表すパケットを解釈するパーサの静的クラス

継承:common.PacketParserBase

is_valid()

is_valid(bare_packet)

与えられた素のパケットが有効であるか否かを確認します。

引数

名称内容
bare_packetcommon.BarePacket素のパケットデータ

戻り値

内容
boolTrue有効、パース可
False無効、パース不可

parse()

parse(bare_packet)

与えられた素のパケットをパースします。

引数

名称内容
bare_packetcommon.BarePacket素のパケットデータ

戻り値

内容
optional ParsedPacketParsedPacketの型をもつデータパースしたデータ
Noneパース不可

ParsedPacket

act から送信されたデータを表すパケットを解釈した結果を格納するための構造体

継承:common.ParsedPacketBase

ParsedPacket()

ParsedPacket(*, time_parsed=None, packet_type=PacketType.BARE, sequence_number=None, source_serial_id=0, source_logical_id=0, lqi=None, supply_voltage=None, command_id=0, data=b'')

引数

継承元のプロパティも合わせて表記します。

名称内容
time_parsedoptional AwareDatetimeパース時刻
packet_typecommon.PacketTypeパケット種別
sequence_numberoptional common.UInt16取得不可、常にNone
source_serial_idcommon.UInt32送信元のシリアルID
source_logical_idcommon.UInt8送信元の論理デバイスID
lqioptional common.UInt8電波通信品質
supply_voltageoptional common.UInt16取得不可、常にNone
commnad_idcommon.UInt8コマンドID
databytesデータ

** で unpack した辞書を渡すことができます。

to_df()

to_df(include=None, exclude=None, verbose=True)

パースしたデータを pandas のデータフレーム形式へ変換します。

引数

名称内容
includeoptional set[str]データフレームへ含めるカラム(メンバ)の集合
excludeoptional set[str]データフレームへ含めないカラム(メンバ)の集合
verboseboolシステム情報の有無(他の引数がNoneの場合のみ)

戻り値

内容
pd.DataFrame-変換したデータフレーム

例外

  • EnvironmentError pandas のない場合

to_dict()

to_dict(include=None, exclude=None, verbose=True, spread=False, sort_keys=False)

パースしたデータを辞書形式へ変換します。

引数

名称内容
includeoptional set[str]辞書へ含めるキー(メンバ)の集合
excludeoptional set[str]辞書へ含めないキー(メンバ)の集合
verboseboolシステム情報の有無(他の引数がNoneの場合のみ)
spreadbool時系列でないlist-likeデータの分割の有無
sort_keysboolキーによるソートの有無

戻り値

内容
dict[str, Any]-変換した辞書

to_json()

to_json(include=None, exclude=None, verbose=True, spread=False, indent=2, sort_keys=False)

パースしたデータをJSON形式へ変換します。

引数

名称内容
includeoptional set[str]JSONへ含めるキー(メンバ)の集合
excludeoptional set[str]JSONへ含めないキー(メンバ)の集合
verboseboolシステム情報の有無(他の引数がNoneの場合のみ)
spreadbool時系列でないlist-likeデータの分割の有無
indentoptional intインデントの数(Noneで改行なし)
sort_keysboolキーによるソートの有無

戻り値

内容
str-変換したJSON文字列

model_*()