Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zensus cells without HH demand profiles #431

Closed
nesnoj opened this issue Sep 8, 2021 · 9 comments · Fixed by #636
Closed

Zensus cells without HH demand profiles #431

nesnoj opened this issue Sep 8, 2021 · 9 comments · Fixed by #636
Assignees
Labels
🐛 bug Something isn't working

Comments

@nesnoj
Copy link
Member

nesnoj commented Sep 8, 2021

Maybe I was too fast merging #260 :

Some Zensus cells with buildings and population do not have any profiles assigned. Let's consider this example plot (village: Husby, east of Flensburg):

image

Legend:

  • green cells: zensus cells with profiles assigned
  • red cells: zensus cells without profiles assigned
  • numbers: population and number of households from zensus
  • brown: buildings

Obviously, there're no profiles assigned in cells without data on households - the methods do not cover those edge cases. In ding0 the buildings won't be part of the grid as they have no load. This might be acceptable in the example above but I've seen settlements with a handful of cells and only 1 holding profile information...

Is there a quick way of covering those edge cases, e.g. use the population (we had a similar case for a missing attribute, cf. post) and some average HH distribution?

@nesnoj nesnoj added the 🐛 bug Something isn't working label Sep 8, 2021
@nailend
Copy link
Contributor

nailend commented Sep 9, 2021

I can think of the following:

  1. identify cells with population but no households
  2. count the buildings in these cells (maybe tag specifc? @nesnoj **)
  3. randomly choose profile-types for each building using the eurostat-distribution from the paper (von Appen, Haack, Braun)

Haushaltstypen

You proposed to choose the amount of profiles by the population. As we will have to assign profiles to each building in #435 I would rather go by building-count. We will have to accept some inaccuracy but would hopefully prevent further flanging. Also remember that the profiles will be scaled at aggregated nuts3 level anyways.

I would preferably not touch the cells in which population and households deviate to much but only cover the ones without any.
Although a similar approach like the above would be possible in cases like buildings-count > households. **

What do you think?

** I am a bit scared to open pandoras-box, integrating a new, unknown dataset.

@nesnoj
Copy link
Member Author

nesnoj commented Sep 9, 2021

Thanks for this proposal.
I do see problems in using buildings:

  • zensus: not all cells have building data
  • OSM: same here

So we'd have other edge cases here..

I'd say lets solve #435 first

@nailend
Copy link
Contributor

nailend commented Dec 6, 2021

Apparently we are missing about 20% of all cells with population in SH

# cells % people %
population 143521 100 2806671 100
population w/ households 113798 79,3 2682470 95,6
population w/o households 29723 20,7 124201 4,4

@nesnoj
Copy link
Member Author

nesnoj commented Dec 6, 2021

Damn it, 20% seems to be the magic number today @ClaraBuettner 📉 .
Shall we use a average split hh/pop, e.g. from neighbouring cells / same municipality / ...?

@ClaraBuettner
Copy link
Contributor

Damn it, 20% seems to be the magic number today @ClaraBuettner chart_with_downwards_trend . Shall we use a average split hh/pop, e.g. from neighbouring cells / same municipality / ...?

At least <5% of the population looks much better, but the data is only for Schleswig-Holstein, isn't it? It might make sense to also look at the data for Germany. And you mentioned that cells without households are often in rural areas, so the numbers might be better for whole Germany...

@nesnoj
Copy link
Member Author

nesnoj commented Dec 6, 2021

Data for DE:

# cells % people %
population 3177723 100 80324282 100
population w/ households 2659745 83,7 78017556 97,1
population w/o households 517978 16,3 2306726 2,9

Somewhat better..

@nesnoj
Copy link
Member Author

nesnoj commented Dec 6, 2021

I mean...well...

@nesnoj
Copy link
Member Author

nesnoj commented Dec 17, 2021

We decided to fix this by allocating an appropriate mean household distribution to affected cells as it affects both power and heat.
Start here

# Allocate profile ids to each cell by census data

# cells how='inner' is used as ids of unpopulated areas are removed

@nesnoj nesnoj self-assigned this Dec 17, 2021
nailend added a commit that referenced this issue Jan 14, 2022
nailend added a commit that referenced this issue Jan 14, 2022
Merge branch 'fix/#431-fill-missing-hh-for-populated-cells' into continuous-integration/run-everything-over-the-weekend-v2
@nailend
Copy link
Contributor

nailend commented Jan 16, 2022

We decided to fix this by allocating an appropriate mean household distribution to affected cells as it affects both power and heat.

After thinking about this, I realized that this is not trivial and a mean distribution does not bring a plausible solution for all cases. The population value of the cells would not fit to the amount of people which are allocated to these household types. Even if we determine a mean distribution just within subgroups of specific population values implausible deviations remain. Especially in the cells with very low population this would end up in household shares <1 and end up in a bunch of new edge cases to solve.

Taking the most common distribution within subgroups of specific population values seems to be the next closest but also generates more edge cases as soon as the subgroups become small and determining the most common is not trivial anymore.

Thus we decided to go for a random choice distribution within subgroups of specific population.
All cells which have a specific population value and no household distribution data, will get the same random household distribution applied which is picked out of cell with the same population value.

nailend added a commit that referenced this issue Jan 18, 2022
Merge branch 'fix/#431-fill-missing-hh-for-populated-cells' into continuous-integration/run-everything-over-the-weekend-v2
nailend added a commit that referenced this issue Jan 21, 2022
…ulated-cells

Fill missing household data for populated cells
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants