RVM Skrevet 7. oktober 2022 Skrevet 7. oktober 2022 (endret) janfrode skrev (5 minutter siden): Det fungerte bedre ja. Tusen takk! Så bra! Siden du la det inn i dag vil du sikkert legge til data fra 01-06. oktober manuelt. Du kan legge inn noe sånt for hver dag du mangler denne måneden, lagre, og ta det bort igjen: pyscript.electricity_monthly_average_price.stored_values['2022-10-01'] = [1.053, 0.875, 0.69, 0.302, 0.24, 0.228, 0.223, 0.334, 0.621, 1.005, 1.505, 1.463, 1.235, 1.017, 0.91, 0.92, 0.96, 1.885, 2.314, 2.674, 2.463, 1.982, 1.511, 1.064] Endret 7. oktober 2022 av RVM Siter
janfrode Skrevet 7. oktober 2022 Skrevet 7. oktober 2022 (endret) Jeg fant at snitt prisen i oktober har være 145 øre/kvh inkl. moms, så jeg la inn: pyscript.electricity_monthly_average_price.stored_values['2022-10-01'] = [1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450] pyscript.electricity_monthly_average_price.stored_values['2022-10-02'] = [1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450] pyscript.electricity_monthly_average_price.stored_values['2022-10-03'] = [1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450] pyscript.electricity_monthly_average_price.stored_values['2022-10-04'] = [1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450] pyscript.electricity_monthly_average_price.stored_values['2022-10-05'] = [1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450] pyscript.electricity_monthly_average_price.stored_values['2022-10-06'] = [1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450, 1.450] og da har jeg grafen under. Får korrigere 2022-10-07 i morgen. Hmm.. det ble nok ikke helt rett... støtten er jo bare 90% på det over 70 øre.. Endret 7. oktober 2022 av janfrode Siter
janfrode Skrevet 7. oktober 2022 Skrevet 7. oktober 2022 (endret) Den ble vel mer rett: - entity: pyscript.electricity_monthly_average_price name: støtte type: line stroke_width: 2 transform: return ((x/1.25)-0.70)*0.9 Endret 21. november 2022 av janfrode glemte moms.. Siter
Thomas Skrevet 14. november 2022 Skrevet 14. november 2022 Kom over denne i dag. i json fila finner man gjennomsnitt hittil denne måned. Man finner også kalkuler og estimer strømstøtte. https://github.com/martinju/stromstotte 1 1 Siter
RVM Skrevet 25. november 2022 Skrevet 25. november 2022 (endret) Thomas skrev (På 14.11.2022 den 23.15): Kom over denne i dag. i json fila finner man gjennomsnitt hittil denne måned. Man finner også kalkuler og estimer strømstøtte. https://github.com/martinju/stromstotte Tusen takk for denne (og til han som har laget det)! Jeg kan ingenting om R, men siden han automatisk publiserer csv/json daglig er det lett å hente inn forecast for månedspris og strømstøtte fra modellen hans med f.eks. pandas og pyscript: import pandas as pd @pyscript_compile def read_csv(): # Separate function for blocking I/O, using @pyscript_compile url = "https://raw.githubusercontent.com/martinju/stromstotte/master/data/current_estimated_compensation.csv" try: df = pd.read_csv(url) df = df[df["area"] == "NO2"] # Only look at region NO2 df = df.set_index("type") out = {} out["mean"] = df.loc["mean"]["mean_price"] out["quantile_0.025"] = df.loc["quantile_0.025"]["mean_price"] out["quantile_0.975"] = df.loc["quantile_0.975"]["mean_price"] return out, None except Exception as exc: return None, exc @time_trigger("cron(@daily)") def get_forecast(): result, exception = task.executor(read_csv) if exception: raise exception else: pyscript.forecast_monthly_electricity_price_mean = round(result["mean"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_025 = round(result["quantile_0.025"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_975 = round(result["quantile_0.975"], 3) Endret 25. november 2022 av RVM Litt rydding i kode 1 Siter
stigvi Skrevet 25. november 2022 Skrevet 25. november 2022 RVM skrev (47 minutter siden): Tusen takk for denne (og til han som har laget det)! Jeg kan ingenting om R, men siden han automatisk publiserer csv/json daglig er det lett å hente inn forecast for månedspris og strømstøtte fra modellen hans med f.eks. pandas og pyscript: import pandas as pd @pyscript_compile def read_csv(): # Separate function for blocking I/O, using @pyscript_compile url = "https://raw.githubusercontent.com/martinju/stromstotte/master/data/current_estimated_compensation.csv" try: df = pd.read_csv(url) df = df.drop(df[df["area"] != "NO2"].index) # Drop regions not NO2 df = df.set_index("type") out = {} out["mean"] = df.loc["mean"]["mean_price"] out["quantile_0_05"] = df.loc["quantile_0.05"]["mean_price"] out["quantile_0_95"] = df.loc["quantile_0.95"]["mean_price"] return out, None except Exception as exc: return None, exc @time_trigger("cron(@daily)") def get_forecast(): result, exception = task.executor(read_csv) if exception: raise exception else: pyscript.forecast_monthly_electricity_price_mean = result["mean"] pyscript.forecast_monthly_electricity_price_quantile_0_05 = result["quantile_0_05"] pyscript.forecast_monthly_electricity_price_quantile_0_95 = result["quantile_0_95"] Kan også anbefale å legge dette inn øverst i skriptet like under import state.persist('pyscript.forecast_monthly_electricity_price_mean', default_value=0, default_attributes={"unit_of_measurement":"NOK/kWh"}) state.persist('pyscript.forecast_monthly_electricity_price_quantile_0_05', default_value=0, default_attributes={"unit_of_measurement":"NOK/kWh"}) state.persist('pyscript.forecast_monthly_electricity_price_quantile_0_95', default_value=0, default_attributes={"unit_of_measurement":"NOK/kWh"}) 1 Siter
Kardemomme Skrevet 28. november 2022 Skrevet 28. november 2022 Her var det mange gode ideer som jeg tror jeg vil låne. Har aldri brukt, eller hørt om, pyscript.. Men det gikk jo greit i legge inn ved å følge bruksanvisningen som ligger her i tråden. Kan jeg spørre om hvordan du får denne visningen: RVM skrev (På 25.11.2022 den 12.06): Siter
RVM Skrevet 28. november 2022 Skrevet 28. november 2022 (endret) Kardemomme skrev (23 minutter siden): Her var det mange gode ideer som jeg tror jeg vil låne. Har aldri brukt, eller hørt om, pyscript.. Men det gikk jo greit i legge inn ved å følge bruksanvisningen som ligger her i tråden. Kan jeg spørre om hvordan du får denne visningen: Visningen er multiple-entity-row. Endret 28. november 2022 av RVM 1 Siter
bearer Skrevet 29. november 2022 Skrevet 29. november 2022 (endret) Er det mulig å unngå overlappingen som gjør at gjennomsiktigheten blir litt feil her? Har slått sammen today/tomorrow for å slippe å ha egen serie med I dag og i morgen, som bare heiter strømpris. data_generator: | return [].concat( entity.attributes.raw_today.map((p) => { return [new Date(p.start), p.value];}), entity.attributes.raw_tomorrow.map((p) => {return [new Date(p.start), p.value];})) Men får ikkje heilt til å slå sammen med strømprisene som kommer fra serien uten data_generator, og legger eg til en ekstra serie så overlapper det på dagen i dag. Har nokken inspill her? Eg kan alltids fjerne gjenommsiktigheten, men er det da mulig å skjule navnet på serien som nå heter "(skjul meg?)" Endret 29. november 2022 av bearer Siter
bearer Skrevet 29. november 2022 Skrevet 29. november 2022 (endret) Endra like godt området til grafen til å kun være 48h og justert mot slutten av neste dag, da vil det det ikkje være behov for å fylle med med gårsdagens pris og kan beholde gjennomsiktigheten. Men om noen finner en måte å kombinere serier på lytter eg gjerne. En av grunnene til eg ville beholde 72h var at eg da fikk ticks på midnatt; tidlighere ignorerte grafen tickAmount for X, som nå plutselig virker. graph_span: 48h span: end: day offset: +24h apex_config: xaxis: tickAmount: 2 edit: .. ved midnatt var det kanskje ikkje en like god ide, null historikk, 24h strømpris og 24h blank graf. Endret 1. desember 2022 av bearer Siter
Jepsh Skrevet 17. desember 2022 Skrevet 17. desember 2022 RVM skrev (På 25.11.2022 den 12.06): Tusen takk for denne (og til han som har laget det)! Jeg kan ingenting om R, men siden han automatisk publiserer csv/json daglig er det lett å hente inn forecast for månedspris og strømstøtte fra modellen hans med f.eks. pandas og pyscript: import pandas as pd @pyscript_compile def read_csv(): # Separate function for blocking I/O, using @pyscript_compile url = "https://raw.githubusercontent.com/martinju/stromstotte/master/data/current_estimated_compensation.csv" try: df = pd.read_csv(url) df = df[df["area"] == "NO2"] # Only look at region NO2 df = df.set_index("type") out = {} out["mean"] = df.loc["mean"]["mean_price"] out["quantile_0.025"] = df.loc["quantile_0.025"]["mean_price"] out["quantile_0.975"] = df.loc["quantile_0.975"]["mean_price"] return out, None except Exception as exc: return None, exc @time_trigger("cron(@daily)") def get_forecast(): result, exception = task.executor(read_csv) if exception: raise exception else: pyscript.forecast_monthly_electricity_price_mean = round(result["mean"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_025 = round(result["quantile_0.025"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_975 = round(result["quantile_0.975"], 3) Veldig nyttig script! Noen ide om hvordan man installerer pandas for pyscript i Home Assistant OS? Siter
RVM Skrevet 18. desember 2022 Skrevet 18. desember 2022 Jepsh skrev (9 timer siden): Veldig nyttig script! Noen ide om hvordan man installerer pandas for pyscript i Home Assistant OS? Har du prøvd å legge det til i requirements.txt? Sitat If your pyscript code requires particular Python packages that are not already installed by HASS, add a requirements.txt file the <config>/pyscript directory. Siter
Jepsh Skrevet 18. desember 2022 Skrevet 18. desember 2022 (endret) RVM skrev (1 time siden): Har du prøvd å legge det til i requirements.txt? Forsøkte dette i går, men fikk fortsatt ikke verdier ut. Ser ut til at den har kommet seg i dag morges, så fungerte tydeligvis uansett. Men endte med å benytte dette rest: scan_interval: 86400 resource: https://raw.githubusercontent.com/martinju/stromstotte/master/data/current_estimated_compensation.json sensor: - name: "Mean price" json_attributes_path: "$.16" value_template: "{{ value_json.16.mean_price | round (2)}}" unit_of_measurement: "kr" json_attributes: - "estimation_date" - "computation_year" - "computation_month" - name: "Quantile 0.025" json_attributes_path: "$.19" value_template: "{{ value_json.19.mean_price | round (2)}}" unit_of_measurement: "kr" json_attributes: - "estimation_date" - "computation_year" - "computation_month" - name: "Quantile 0.975" json_attributes_path: "$.26" value_template: "{{ value_json.26.mean_price | round (2)}}" unit_of_measurement: "kr" json_attributes: - "estimation_date" - "computation_year" - "computation_month" Endret 18. desember 2022 av Jepsh 3 Siter
Autoper Skrevet 25. desember 2022 Skrevet 25. desember 2022 RVM skrev (På 25.11.2022 den 12.06): Tusen takk for denne (og til han som har laget det)! Jeg kan ingenting om R, men siden han automatisk publiserer csv/json daglig er det lett å hente inn forecast for månedspris og strømstøtte fra modellen hans med f.eks. pandas og pyscript: import pandas as pd @pyscript_compile def read_csv(): # Separate function for blocking I/O, using @pyscript_compile url = "https://raw.githubusercontent.com/martinju/stromstotte/master/data/current_estimated_compensation.csv" try: df = pd.read_csv(url) df = df[df["area"] == "NO2"] # Only look at region NO2 df = df.set_index("type") out = {} out["mean"] = df.loc["mean"]["mean_price"] out["quantile_0.025"] = df.loc["quantile_0.025"]["mean_price"] out["quantile_0.975"] = df.loc["quantile_0.975"]["mean_price"] return out, None except Exception as exc: return None, exc @time_trigger("cron(@daily)") def get_forecast(): result, exception = task.executor(read_csv) if exception: raise exception else: pyscript.forecast_monthly_electricity_price_mean = round(result["mean"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_025 = round(result["quantile_0.025"], 3) pyscript.forecast_monthly_electricity_price_quantile_0_975 = round(result["quantile_0.975"], 3) Hei, har forsøkt å få til dette uten hell. Har gjort følgende: I configuration.yaml: pyscript: allow_all_imports: true I requirements.txt pandas Får følgende feilmelding i core logs: Failed to send request, {"errorCode":3012,"error":"request timeout","timeIdentification":0} Noen tips? - JT - Siter
RVM Skrevet 27. desember 2022 Skrevet 27. desember 2022 Autoper skrev (På 25.12.2022 den 13.46): Får følgende feilmelding i core logs: Failed to send request, {"errorCode":3012,"error":"request timeout","timeIdentification":0} Noen tips? Ingen kjempegode tips nei, men klarer du å feilsøke hvor problemet oppstår? Forstår jeg det riktig at du får importert pandas, men at det feiler på pd.read_csv fordi den ikke får sendt requesten? Siter
admiralen Skrevet 27. desember 2022 Skrevet 27. desember 2022 Sleit med tilsvarande i dag, og fant ut at å legge inn versjonsnummeret i requirements.txt filen vil løyse problemet (etter ein restart av HAOS). t.d erstatt "pandas" med "pandas=1.5.2" Genialt å få dette på plass Siter
Autoper Skrevet 28. desember 2022 Skrevet 28. desember 2022 RVM skrev (På 27.12.2022 den 9.04): Ingen kjempegode tips nei, men klarer du å feilsøke hvor problemet oppstår? Forstår jeg det riktig at du får importert pandas, men at det feiler på pd.read_csv fordi den ikke får sendt requesten? Har ingen aning hva som feilet, men nå virker alt (uten at jeg har gjort noe)... Siter
dagern Skrevet 12. januar 2023 Skrevet 12. januar 2023 Hei, Tibber har tatt kvelden for meg, så jeg har installert nordpool. Prøver å få sammenlignet nåværende pris mot gjennomsnittlig ved å bruke templates. Har ikke hatt suksess. Har til og med sett den samme koden i denne tråden, men det fungerer ikke for meg. Denne koden gir False uansett hva man gjør value_template: "{{ state_attr('nordpool_kwh_oslo_nok_3_10_025','Current price')|float(0) > state_attr('nordpool_kwh_oslo_nok_3_10_025','average')|float(0) }}" Siter
stigvi Skrevet 12. januar 2023 Skrevet 12. januar 2023 sensoren har vel et navn som starter med "sensor." ? Min nordpool sensor har ikke en attributt som heter "Current price". Hvor har du funnet det? Prøv heller med states('sensor.nordpool_kwh_oslo_nok_3_10_025')|float(0) 1 Siter
dagern Skrevet 12. januar 2023 Skrevet 12. januar 2023 Altså, så enkelt var det, med sensor.nordpool.... så viser den true og false. Takk skal du ha. Jeg var litt rask i avtrekkeren. Viser seg det at den viser True og False invertert i forhold til hva som er riktig "{{ state_attr('sensor.nordpool_kwh_oslo_nok_3_10_025','Current price')|float(0) < state_attr('sensor.nordpool_kwh_oslo_nok_3_10_025','average')|float(0) }}" Hvis jeg tar bort den ene halvdelen så får jeg 0 og det er det som står i parantesen etter float . Burde akkurat nå vært 138 øre Siter
dagern Skrevet 12. januar 2023 Skrevet 12. januar 2023 (endret) stigvi skrev (26 minutter siden): sensoren har vel et navn som starter med "sensor." ? Min nordpool sensor har ikke en attributt som heter "Current price". Hvor har du funnet det? Prøv heller med states('sensor.nordpool_kwh_oslo_nok_3_10_025')|float(0) Med denne får jeg riktig nåverdi, men jeg skulle gjerne sammenlignet med gjennomsnitt. Attributtene fant jeg i HA på det kortet jeg har laget for den i lovelace. Det er en nedtrekksmeny der med alle attributtene slik jeg har forstått det Endret 12. januar 2023 av dagern Siter
hellowlol Skrevet 12. januar 2023 Forfatter Skrevet 12. januar 2023 current_price er det verdi som state Siter
Thorbjørn Skrevet 12. januar 2023 Skrevet 12. januar 2023 Low Price attributten er true når timeprisen er under snitt. Kan du ikke bare bruke den? Siter
stigvi Skrevet 13. januar 2023 Skrevet 13. januar 2023 dagern skrev (10 timer siden): Med denne får jeg riktig nåverdi, men jeg skulle gjerne sammenlignet med gjennomsnitt. Jeg tenkte at dette kunne du bruke i ditt uttrykk for å sammenligne. Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.