ecopipeline 0.11.7__tar.gz → 0.11.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. {ecopipeline-0.11.7/src/ecopipeline.egg-info → ecopipeline-0.11.9}/PKG-INFO +1 -1
  2. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/setup.cfg +1 -1
  3. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/transform/__init__.py +2 -2
  4. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/transform/transform.py +38 -8
  5. {ecopipeline-0.11.7 → ecopipeline-0.11.9/src/ecopipeline.egg-info}/PKG-INFO +1 -1
  6. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/LICENSE +0 -0
  7. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/README.md +0 -0
  8. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/pyproject.toml +0 -0
  9. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/setup.py +0 -0
  10. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/__init__.py +0 -0
  11. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/event_tracking/__init__.py +0 -0
  12. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/event_tracking/event_tracking.py +0 -0
  13. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/extract/__init__.py +0 -0
  14. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/extract/extract.py +0 -0
  15. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/load/__init__.py +0 -0
  16. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/load/load.py +0 -0
  17. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/transform/bayview.py +0 -0
  18. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/transform/lbnl.py +0 -0
  19. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/utils/ConfigManager.py +0 -0
  20. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/utils/NOAADataDownloader.py +0 -0
  21. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/utils/__init__.py +0 -0
  22. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/utils/pkls/__init__.py +0 -0
  23. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline/utils/unit_convert.py +0 -0
  24. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline.egg-info/SOURCES.txt +0 -0
  25. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline.egg-info/dependency_links.txt +0 -0
  26. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline.egg-info/requires.txt +0 -0
  27. {ecopipeline-0.11.7 → ecopipeline-0.11.9}/src/ecopipeline.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ecopipeline
3
- Version: 0.11.7
3
+ Version: 0.11.9
4
4
  Summary: Contains functions for use in Ecotope Datapipelines
5
5
  Classifier: Programming Language :: Python :: 3
6
6
  Classifier: License :: OSI Approved :: GNU General Public License (GPL)
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = ecopipeline
3
- version = 0.11.7
3
+ version = 0.11.9
4
4
  authors = ["Carlos Bello, <bellocarlos@seattleu.edu>, Emil Fahrig <fahrigemil@seattleu.edu>, Casey Mang <cmang@seattleu.edu>, Julian Harris <harrisjulian@seattleu.edu>, Roger Tram <rtram@seattleu.edu>, Nolan Price <nolan@ecotope.com>"]
5
5
  description = Contains functions for use in Ecotope Datapipelines
6
6
  long_description = file: README.md
@@ -2,7 +2,7 @@ from .transform import rename_sensors, avg_duplicate_times, remove_outliers, ffi
2
2
  aggregate_df, join_to_hourly, concat_last_row, join_to_daily, cop_method_1, cop_method_2, create_summary_tables, remove_partial_days, \
3
3
  convert_c_to_f,convert_l_to_g, convert_on_off_col_to_bool, flag_dhw_outage,generate_event_log_df,convert_time_zone, shift_accumulative_columns, \
4
4
  heat_output_calc, add_relative_humidity, apply_equipment_cop_derate, create_data_statistics_df, delete_erroneous_from_time_pt,column_name_change, \
5
- process_ls_signal, convert_temp_resistance_type
5
+ process_ls_signal, convert_temp_resistance_type, estimate_power
6
6
  from .lbnl import nclarity_filter_new, site_specific, condensate_calculations, gas_valve_diff, gather_outdoor_conditions, aqsuite_prep_time, \
7
7
  nclarity_csv_to_df, _add_date, add_local_time, aqsuite_filter_new, get_refrig_charge, elev_correction, change_ID_to_HVAC, get_hvac_state, \
8
8
  get_cop_values, get_cfm_values, replace_humidity, create_fan_curves, lbnl_temperature_conversions, lbnl_pressure_conversions, \
@@ -14,4 +14,4 @@ __all__ = ["rename_sensors", "avg_duplicate_times", "remove_outliers", "ffill_mi
14
14
  "create_fan_curves", "lbnl_temperature_conversions", "lbnl_pressure_conversions", "lbnl_sat_calculations", "get_site_cfm_info", "get_site_info", "merge_indexlike_rows", "calculate_cop_values", "aggregate_values",
15
15
  "get_energy_by_min", "verify_power_energy", "get_temp_zones120", "get_storage_gals120","convert_c_to_f","convert_l_to_g", "convert_on_off_col_to_bool", "flag_dhw_outage","generate_event_log_df","convert_time_zone",
16
16
  "shift_accumulative_columns","heat_output_calc", "add_relative_humidity","apply_equipment_cop_derate","create_data_statistics_df",
17
- "delete_erroneous_from_time_pt","column_name_change","process_ls_signal", "convert_temp_resistance_type"]
17
+ "delete_erroneous_from_time_pt","column_name_change","process_ls_signal", "convert_temp_resistance_type", "estimate_power"]
@@ -311,23 +311,25 @@ def convert_temp_resistance_type(df : pd.DataFrame, column_name : str, sensor_mo
311
311
 
312
312
  Parameters:
313
313
  -----------
314
- temp_F : float or array-like
315
- Temperature in Fahrenheit
316
- model_path : str, optional
317
- Path to a pickle file containing a saved interpolation model.
318
- If provided, loads and uses that model instead of the global interp_model.
319
- If None, uses the global interp_model.
314
+ df: pd.DataFrame
315
+ Timestamp indexed Pandas dataframe of minute by minute values
316
+ column_name : str
317
+ Name of column with resistance conversion type 2 data
318
+ sensor_model : str
319
+ possible strings: veris, tasseron
320
320
 
321
321
  Returns:
322
322
  --------
323
- float or ndarray
324
- Resistance in Ohms
323
+ df: pd.DataFrame
325
324
  """
326
325
  model_path_t_to_r = '../utils/pkls/'
327
326
  model_path_r_to_t = '../utils/pkls/'
328
327
  if sensor_model == 'veris':
329
328
  model_path_t_to_r = model_path_t_to_r + 'veris_temp_to_resistance_2.pkl'
330
329
  model_path_r_to_t = model_path_r_to_t + 'veris_resistance_to_temp_3.pkl'
330
+ elif sensor_model == 'tasseron':
331
+ model_path_t_to_r = model_path_t_to_r + 'tasseron_temp_to_resistance_2.pkl'
332
+ model_path_r_to_t = model_path_r_to_t + 'tasseron_resistance_to_temp_3.pkl'
331
333
  else:
332
334
  raise Exception("unsupported sensor model")
333
335
 
@@ -340,6 +342,34 @@ def convert_temp_resistance_type(df : pd.DataFrame, column_name : str, sensor_mo
340
342
  df.drop(columns='resistance')
341
343
  return df
342
344
 
345
+ def estimate_power(df : pd.DataFrame, new_power_column : str, current_a_column : str, current_b_column : str, current_c_column : str,
346
+ assumed_voltage : float = 208, power_factor : float = 1):
347
+ """
348
+ df: pd.DataFrame
349
+ Pandas dataframe with minute-to-minute data
350
+ new_power_column : str
351
+ The column name of the power varriable for the calculation. Units of the column should be kW
352
+ current_a_column : str
353
+ The column name of the Current A varriable for the calculation. Units of the column should be amps
354
+ current_b_column : str
355
+ The column name of the Current B varriable for the calculation. Units of the column should be amps
356
+ current_c_column : str
357
+ The column name of the Current C varriable for the calculation. Units of the column should be amps
358
+ assumed_voltage : float
359
+ The assumed voltage (default 208)
360
+ power_factor : float
361
+ The power factor (default 1)
362
+
363
+ Returns
364
+ -------
365
+ pd.DataFrame:
366
+ Pandas dataframe with new estimated power column of specified name.
367
+ """
368
+ #average current * 208V * PF * sqrt(3)
369
+ df[new_power_column] = (df[current_a_column] + df[current_b_column] + df[current_c_column]) / 3 * assumed_voltage * power_factor * np.sqrt(3) / 1000
370
+
371
+ return df
372
+
343
373
  def process_ls_signal(df: pd.DataFrame, hourly_df: pd.DataFrame, daily_df: pd.DataFrame, load_dict: dict = {1: "normal", 2: "loadUp", 3 : "shed"}, ls_column: str = 'ls',
344
374
  drop_ls_from_df : bool = False):
345
375
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ecopipeline
3
- Version: 0.11.7
3
+ Version: 0.11.9
4
4
  Summary: Contains functions for use in Ecotope Datapipelines
5
5
  Classifier: Programming Language :: Python :: 3
6
6
  Classifier: License :: OSI Approved :: GNU General Public License (GPL)
File without changes
File without changes
File without changes