このクラスには、pdg.WorkItemインスタンスのリストをアトリビュート値に基づいて分割するための便利メソッドが備わっています。
メソッド ¶
静的メソッド ¶
batchByFrame(work_items)
→ tuple
このメソッドは廃止されました。代わりにpdg.FrameUtils.batchByFrameを使用してください。
splitByAttribute(work_items, attrib_names, partial_matches=False)
→ tuple
入力リスト内のワークアイテムを、指定したアトリビュート名(s)で分割します。 アトリビュート値を、その値を持つワークアイテムのリスト、そのアトリビュートが見つからないワークアイテムのリスト、固有の値のリストに分けたマップを返します。
ワークアイテム上のattrib_nameの値は、すべて同じタイプである必要はありません。
すべてのアトリビュート値は文字列に変換されます。
複数のアトリビュート名は、スペース区切りの文字列で渡すことができます。
複数のアトリビュート名をこの関数に渡した場合、それらのアトリビュート値は、単一値ではなくタプルとして扱われます。
複数のアトリビュート名を指定する時、このpartial_matchesフラグでは、一部のアトリビュートしかないワークアイテムも部分的にマッチしたマップエントリに追加するかどうかを指定します。
例:
attribute = "wedgeindex" (value_map, missing, unique) = pdg.AttributePattern.splitByAttribute(node.work_items, attribute) print("Attribute {} has {} unique values".format(attribute, len(unique))) for work_item in missing: print("Work Item {} is missing attrib {}".format(attribute)) for entry in value_map: print("{} work items have value {}".format(len(value_map[entry]), entry))
splitByFloat(work_items, attrib_name)
→ tuple
入力のワークアイテムを、指定した浮動小数点アトリビュート名で分割します。
この関数はsplitByAttributeと同じですが、アトリビュート値を文字列に変換しません。
指定した名前であるもののタイプが異なるアトリビュートを持っているワークアイテムは、見つからないアトリビュートとして扱われます。
splitByInt(work_items, attrib_name)
→ tuple
入力ワークアイテムを、指定した整数アトリビュート名で分割します。
この関数はsplitByAttributeと同じですが、アトリビュート値を文字列に変換しません。
指定した名前であるもののタイプが異なるアトリビュートを持っているワークアイテムは、見つからないアトリビュートとして扱われます。
splitByString(work_items, attrib_name)
→ tuple
入力ワークアイテムを、指定した文字列アトリビュート名で分割します。
この関数はsplitByAttributeと同じですが、アトリビュート値を文字列に変換しません。
指定した名前であるもののタイプが異なるアトリビュートを持っているワークアイテムは、見つからないアトリビュートとして扱われます。