Initializing help system before first use

xpressinsight.AppInterface.populate

Purpose
Reads the values of the specified entities for the current scenario into the current Insight app class.
Synopsis
xpressinsight.AppInterface.populate(self, entities: Union[Iterable[str], Iterable[EntityBase]] = None, *, entity_filter: Callable[[Entity], bool] = None, fetch_individual_series: bool = False) -> None
Arguments
entities 
The entities to be populated. May be specified as a list of entity names or entity objects. If names are specified, columns can be identified using the pattern "<frame_name>.<col_name>" or by using their entity names (by default "<frame_name>_<col_name>"). If a DataFrame is specified, then we will populate all columns in the frame declared with either manage=INPUT.
entity_filter 
If specified, the given function will be called for each Entity and that entity will be populated if the function returned True.
fetch_individual_series 
Configures method by which DataFrame entities are fetched from the Insight repository; when True, they are fetched as an entire frame; when False they are fetched as individual series and then combined into a DataFrame within the Python runtime. The default ( True) is more efficient at the expense of using more memory in the Insight worker for some scenarios; try setting to False if you encounter memory errors in the worker when requesting a large data frame.
Return value

This function may raise the following errors:

  RuntimeError

If called from an execution mode declared with clear_input=True, or an app not declared with partial_populate=True

  KeyError

If a specified entity name cannot be found.

  TypeError

If a specified entity is not an input entity, or is a Param-type entity.

  InterfaceError

If there is some other error communicating with the Insight worker.

Example
Demonstration of populating named entities
>>> import xpressinsight as xi
...
... @xi.AppConfig("My App", partial_populate=True)
... class InsightApp(xi.AppBase):
...     @xi.ExecModeLoad()
...     def load(self):
...         self.insight.populate(['profit', 'factories_frame'])			
Demonstration of populating all entities starting 'factor'
>>> import xpressinsight as xi
...
... @xi.AppConfig("My App", partial_populate=True)
... class InsightApp(xi.AppBase):
...     @xi.ExecModeLoad()
...     def load(self):
...         self.insight.populate(
...             entity_filter=lambda e: e.entity_name.startswith('factor'))			
Further information
1. The method populate is part of the class xpressinsight.AppInterface.
2. By default, execution modes without clear_input=True always populate all input entities. The app configuration must set the partial_populate attribute to True to turn off automatic population and allow entities to be populated through this function.
3. Parameter entities are always populated by default and cannot be repopulated using this function.
4. If neither entities nor entity_filter are specified, this function will populate all non-parameter entities with manage=INPUT.
5. Existing values in the specified entities will be overwritten. When populating columns in a DataFrame or PolarsDataFrame, any existing columns in that data-frame will not be retained.
6. This function may not be called more than once per execution mode.
7. This function must not be called from an execution mode declared clear_input=True.
8. This function must not be called from an app not configured with partial_populate=True.
Related topics

© 2001-2025 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.