haniwers.mimic#

擬似イベントを生成するモジュール

from haniwers import mimic

# ジェネレーターとして使う例
for fe in mimic.fake_events_generator(n=100, seed=None, interval="random"):
    # FakeEventオブジェクトを処理する
    print(fe.timestamp)


# 擬似イベントのデータフレームを取得する例
fake_data = mimic.fake_events(100)

Module Contents#

Classes#

FakeEvent

擬似イベント用のクラス

Functions#

fake_events_generator

FakeEventを生成

fake_events

FakeEventのデータフレームを作成

API#

class haniwers.mimic.FakeEvent(/, **data: Any)#

Bases: haniwers.daq.RealEvent

擬似イベント用のクラス

Initialization

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

seed: int | None#

None

乱数シード。デフォルト値はNone

is_fake: bool#

True

データ種類のフラグ。FakeEventオブジェクトは常にTrueに設定

model_post_init(__context) None#

メンバー変数を初期化する

to_mock_string() str#

モックしたデータ列

時刻が入ってないスペース区切りの文字列

Example:

top mid btm adc tmp atm hmd
haniwers.mimic.fake_events_generator(n: int, seed: int | None = None, interval: str | int = 'random')#

FakeEventを生成

FakeEventn回生成します。 intervalでイベントごとの生成間隔を変更できます。 実際のデータ取得を模擬するため、interval="random"を指定できます。

Args:
  • n (int): イベント数

  • seed (int | None) : 乱数シード。デフォルトは None

  • interval (int | str) : 生成する間隔。デフォルトは “random”

Yield:
  • FakeEvent: 擬似イベント

Example:

for fe in fake_events_generator(n=100, seed=None, interval="random"):
    e = fe.model_dump()
    print(e)
haniwers.mimic.fake_events(n: int) pandas.DataFrame#

FakeEventのデータフレームを作成

Note:
  • seed=Noneinterval=0fake_events_generatorを実行

  • 結果をpd.DataFrameに変換

Args:
  • n (int): 生成するFakeEventの数

Returns:
  • data (pd.DataFrame): 擬似イベントのデータフレーム

Example:

events = fake_events(100)
events.info()