niimpy.preprocessing.application module
- niimpy.preprocessing.application.app_count(df, bat, screen, config={})[source]
This function returns the number of times each app group has been used, within the specified timeframe. The app groups are defined as a dictionary within the config variable. Examples of app groups are social media, sports, games, etc. If no mapping is given, a default one will be used. If no resampling window is given, the function sets a 30 min default time window. The function aggregates the duration by user, by app group, by timewindow.
- Parameters:
- df: pandas.DataFrame
Input data frame
- bat: pandas.DataFrame
Dataframe with the battery information. If no data is available, an empty dataframe should be passed.
- screen: pandas.DataFrame
Dataframe with the screen information. If no data is available, an empty dataframe should be passed.
- config: dict, optional
Dictionary keys containing optional arguments for the computation of scrren information. Keys can be column names, other dictionaries, etc. The functions needs the column name where the data is stored; if none is given, the default name “” will be used. To include information about the resampling window, please include the selected parameters from pandas.DataFrame.resample in a dictionary called resample_args.
- Returns:
- result: dataframe
Resulting dataframe
- niimpy.preprocessing.application.app_duration(df, bat, screen, config=None)[source]
This function returns the duration of use of different app groups, within the specified timeframe. The app groups are defined as a dictionary within the config variable. Examples of app groups are social media, sports, games, etc. If no mapping is given, a default one will be used. If no resampling window is given, the function sets a 30 min default time window. The function aggregates the duration by user, by app group, by timewindow.
- Parameters:
- df: pandas.DataFrame
Input data frame
- bat: pandas.DataFrame
Dataframe with the battery information. If no data is available, an empty dataframe should be passed.
- screen: pandas.DataFrame
Dataframe with the screen information. If no data is available, an empty dataframe should be passed.
- config: dict, optional
Dictionary keys containing optional arguments for the computation of scrren information. Keys can be column names, other dictionaries, etc. The functions needs the column name where the data is stored; if none is given, the default name “application_name” will be used. To include information about the resampling window, please include the selected parameters from pandas.DataFrame.resample in a dictionary called resample_args.
- Returns:
- result: dataframe
Resulting dataframe
- niimpy.preprocessing.application.classify_app(df, config)[source]
This function is a helper function for other screen preprocessing. The function classifies the screen events into the groups specified by group_map.
- Parameters:
- df: pandas.DataFrame
Input data frame
- config: dict, optional
Dictionary keys containing optional arguments for the computation of screen information. Keys can be column names, other dictionaries, etc. It can contain a dictionary called group_map, which has the mapping to define the app groups. Keys should be the app name, values are the app groups (e.g. ‘my_app’:’my_app_group’)
- Returns:
- df: dataframe
Resulting dataframe
- niimpy.preprocessing.application.extract_features_app(df, bat, screen, features=None)[source]
This function computes and organizes the selected features for application events. The function aggregates the features by user, by app group, by time window. If no time window is specified, it will automatically aggregate the features in 30 mins non-overlapping windows. If no group_map is provided, a default one will be used.
The complete list of features that can be calculated are: app_count, and app_duration.
- Parameters:
- df: pandas.DataFrame
Input data frame
- features: dict, optional
Dictionary keys contain the names of the features to compute. If none is given, all features will be computed.
- Returns:
- result: dataframe
Resulting dataframe