@@ -164,21 +164,21 @@ def get_request_data_schema(self) -> Dict[str, ValueType]:
164164 return schema
165165
166166 def get_transformed_features_df (
167- self , full_feature_names : bool , df_with_features : pd .DataFrame
167+ self , df_with_features : pd .DataFrame
168168 ) -> pd .DataFrame :
169169 # Apply on demand transformations
170- # TODO(adchia): Include only the feature values from the specified input FVs in the ODFV.
171- # Copy over un-prefixed features even if not requested since transform may need it
172170 columns_to_cleanup = []
173- if full_feature_names :
174- for input_fv in self .input_feature_views .values ():
175- for feature in input_fv .features :
176- full_feature_ref = f"{ input_fv .name } __{ feature .name } "
177- if full_feature_ref in df_with_features .keys ():
178- df_with_features [feature .name ] = df_with_features [
179- full_feature_ref
180- ]
181- columns_to_cleanup .append (feature .name )
171+ for input_fv in self .input_feature_views .values ():
172+ for feature in input_fv .features :
173+ full_feature_ref = f"{ input_fv .name } __{ feature .name } "
174+ if full_feature_ref in df_with_features .keys ():
175+ # Make sure the partial feature name is always present
176+ df_with_features [feature .name ] = df_with_features [full_feature_ref ]
177+ columns_to_cleanup .append (feature .name )
178+ elif feature .name in df_with_features .keys ():
179+ # Make sure the full feature name is always present
180+ df_with_features [full_feature_ref ] = df_with_features [feature .name ]
181+ columns_to_cleanup .append (full_feature_ref )
182182
183183 # Compute transformed values and apply to each result row
184184 df_with_transformed_features = self .udf .__call__ (df_with_features )
0 commit comments