1 Introduction

Exploration of Hampshire area data downloaded from the CSE Impact Toolkit (https://impact-tool.org.uk/about). Note that there is no obvious data re-use license on the impact-tool website. However the data is free to download so…

The data is modelled:

  • Territorial emissions
  • Consumption emissions

For Parishes and Local Authorities.

The methodology under-pinning the model is open and transparent.

Health warning: this is modelled data giving the ‘expected’ emissions for the area. Although some modeled estimates can be constrained to fit observed data (e.g. LSOA level total residential eletricity & gas consumption); much of it cannot. This means that specific local conditions will lead to the estimates being ‘wrong’ and in some cases these may be obviously so. This is more likely to be obvious at finer geographical (i.e. parish) levels, especially where ‘unusual’ patterns of infrastructure pertain.

As a result these estimates are best viewed as the ‘expected’ emissions “all other things being equal”. If we could actually measure the emissions we might find ‘good’ places which are doing much better than ‘expected’ (or worse). It would then be interesting to find out why…

This brief report explores the data for the Hampshire area:

  • Hampshire County
  • Southampton
  • Portsmouth
  • Isle of Wight

2 Local Authority level

f <- path.expand(paste0(rmdParams$csePath, "/local-authority-all-territorial-absolute.csv.gz"))
absTerrDT <- data.table::fread(f)
absTerrDT[, source := "Territorial absolute"]
atmDT <- melt(absTerrDT)

f <- path.expand(paste0(rmdParams$csePath, "/local-authority-all-consumption-absolute.csv.gz"))
absConsDT <- data.table::fread(f)
absConsDT[, source := "Consumption absolute"]
actmDT <- melt(absConsDT)

laAbsDT <- rbind(atmDT, actmDT)

# Local Council
# Isle of Wight
# Southampton
# Portsmouth
# Basingstoke & Deane
# East Hampshire
# Eastleigh
# Fareham
# Gosport
# Hart
# Havant
# New Forest
# Rushmoor
# Test Valley
# Winchester

solent_laAbsDT <- laAbsDT[name %like% "Hampshire" |
                            name %like% "Basingstoke" |
                            name %like% "Eastleigh" |
                            name %like% "Fareham" |
                            name %like% "Gosport" |
                            name == "Hart" |
                            name == "Havant" |
                            name %like% "New Forest" |
                            name == "Rushmoor" |
                            name %like% "Test Valley" |
                            name %like% "Winchester" |
                            name %like% "Southampton" |
                            name %like% "Portsmouth" |
                            name %like% "Isle of Wight" |
                            name %like% "Southampton"]

f <- path.expand(paste0(rmdParams$csePath, "/local-authority-all-territorial-per-household.csv.gz"))
phTerrDT <- data.table::fread(f)
phTerrDT[, source := "Territorial per household"]
phtmDT <- melt(phTerrDT)

f <- path.expand(paste0(rmdParams$csePath, "/local-authority-all-consumption-per-household.csv.gz"))
phConsDT <- data.table::fread(f)
phConsDT[, source := "Consumption per household"]
phctmDT <- melt(phConsDT)

laPhDT <- rbind(phtmDT, phctmDT)

solent_laPhDT <- laPhDT[name %like% "Hampshire" |
                            name %like% "Basingstoke" |
                            name == "Hart" |
                            name %like% "Eastleigh" |
                            name %like% "New Forest" |
                            name %like% "Test Valley" |
                            name %like% "Portsmouth" |
                            name %like% "Isle of Wight" |
                            name %like% "Southampton"]

t <- solent_laAbsDT[, .(nVariables = .N), keyby = .(name)]

ft <- flextable(t)

set_caption(ft, caption = "Local Authorities included")
Table 2.1: Local Authorities included

name

nVariables

Basingstoke and Deane

36

East Hampshire

36

Eastleigh

36

Fareham

36

Gosport

36

Hart

36

Havant

36

Isle of Wight

36

New Forest

36

Portsmouth

36

Rushmoor

36

Southampton

36

Test Valley

36

Winchester

36

Any missing?

2.1 Territorial emissions

Figure 2.1 shows the absolute values for territorial emissions. The plot is visually dominated by ‘power generation’ in the New Forest.

dt <- solent_laAbsDT[source == "Territorial absolute", 
                     .(tCO2e = mean(value)),
                     keyby = .(variable, name)] 

t <- dcast(dt,  variable ~  name)
## Using 'tCO2e' as value column. Use 'value.var' to override
ft <- flextable::flextable(t)
ft <- set_caption(ft,
            caption = "Territorial emissions: absolute T CO2e")
ft <- colformat_num(ft, 2:10, digits = 2)
flextable::autofit(ft)
Table 2.2: Territorial emissions: absolute T CO2e

variable

Basingstoke and Deane

East Hampshire

Eastleigh

Fareham

Gosport

Hart

Havant

Isle of Wight

New Forest

Portsmouth

Rushmoor

Southampton

Test Valley

Winchester

Housing - Mains gas (t CO2e)

147,023.80

117,246.69

117,495.14

105,583.15

61,982.08

105,821.21

112,952.56

119,302.02

169,568.25

155539.9380

84419.4500

164399.3360

91074.957

105049.9160

Housing - Electricity (t CO2e)

78,059.00

59,941.29

51,081.78

46,645.44

33,380.57

43,065.63

51,269.58

67,417.29

82,569.40

76323.2150

35761.9350

98010.1210

60124.250

57665.2490

Housing - Oil (t CO2e)

56,696.59

39,414.71

1,776.53

2,433.82

76.44

9,516.95

704.05

18,384.06

40,393.22

17.4950

61.1450

102.5000

73274.436

51180.0210

Housing - LPG (t CO2e)

3,591.26

5,081.61

1,106.17

918.83

175.20

1,776.58

697.82

4,783.99

5,782.02

472.5850

226.9520

349.2860

6643.444

6365.5550

Housing - Biomass (t CO2e)

848.64

1,047.42

302.08

307.19

69.87

478.90

253.71

744.80

1,419.59

152.9540

147.3880

243.3950

876.773

1112.8430

Housing - Coal (t CO2e)

1,179.32

1,122.30

313.84

409.54

259.27

278.47

514.10

1,058.53

2,003.98

531.2630

332.4920

794.9130

1146.400

1085.9000

Industrial and commercial - Electricity (t CO2e)

119,331.98

48,625.99

76,113.93

57,726.91

33,819.21

63,174.50

47,968.54

65,308.33

102,653.75

143882.5330

58329.6941

128052.3538

76714.128

88283.7207

Industrial and commercial - Mains gas (t CO2e)

80,817.89

24,563.25

31,501.54

49,596.39

17,550.20

26,108.21

19,749.00

82,866.21

45,729.95

78973.9296

39336.4675

97616.2671

61728.728

46393.9226

Industrial and commercial - Other Fuels (t CO2e)

40,751.48

46,692.26

23,806.63

15,936.83

7,686.69

21,163.15

20,065.98

32,396.15

62,564.65

37391.4692

14690.5685

31532.0174

50945.509

37812.6888

Industrial and commercial - Large industrial consumers (t CO2e)

553.51

0.00

0.00

3,537.65

126.87

81.32

1,896.31

1,468.57

70,203.44

2103.2965

0.0000

349.0314

1142.551

0.0000

Power generation (t CO2e)

6,086.44

1,426.74

1.48

1,736.98

0.23

368.38

1,709.73

4,079.53

1,734,141.06

6551.7534

13778.4803

400428.3295

1453.678

748.7915

Agriculture - Fuel (t CO2e)

16,773.77

13,180.75

1,693.42

1,603.40

304.60

4,493.53

933.17

11,325.71

14,651.75

509.0324

291.1050

423.4139

20220.507

20344.4235

Agriculture - Livestock and crop-related emissions (t CO2e)

60,498.69

52,425.93

5,393.35

3,843.98

1,434.72

15,119.49

2,038.80

92,296.64

64,998.18

1441.3468

264.4438

353.0500

70706.621

86220.2738

Aviation (t CO2e)

106,423.41

73,085.74

79,831.03

70,456.17

51,648.32

58,316.10

76,193.73

85,716.96

108,860.39

130286.9021

57619.0377

153096.0276

75803.718

75274.4140

Shipping (t CO2e)

42,387.47

29,109.38

31,795.97

28,062.05

20,571.05

23,226.77

30,347.27

34,140.29

43,358.10

51892.0857

22949.1376

60976.7525

30191.930

29981.1130

Diesel fuelled railways (t CO2e)

13,873.00

509.72

9,247.69

883.37

0.00

1,729.88

120.36

0.00

3,059.11

1986.6946

1459.7709

742.1455

9856.606

1881.1531

F-gases (t CO2e)

40,218.79

16,388.56

25,652.89

19,455.86

11,398.18

21,291.88

16,166.97

22,011.05

34,597.68

48493.1374

19659.0219

43157.8473

25855.180

29754.5123

Road Transport (t CO2e)

534,643.62

342,258.55

277,475.81

216,288.69

63,699.65

235,161.67

171,377.80

120,395.01

479,560.55

291295.4311

137326.5835

233518.2229

469127.543

482441.6985

Other Transport (t CO2e)

2,591.27

2,694.53

7,638.19

1,088.53

331.37

1,378.14

917.36

726.13

2,495.40

1414.3609

776.2174

4424.7332

2137.957

2616.7733

Waste management (t CO2e)

83,856.70

44,936.93

13,969.24

20,941.69

2,803.84

26,671.42

7,061.60

70,268.61

187,091.53

97437.0779

6051.8316

27411.1872

85509.424

29717.7077

Land use, land-use change, and forestry (t CO2e)

-61,675.28

-51,060.49

-5,740.53

-5,665.84

-1,839.16

-25,929.23

-3,992.87

-30,546.22

-117,206.95

-2293.1372

-7577.8106

-6015.5179

-56599.544

-49083.6279

ggplot2::ggplot(dt, aes(x = name, y = variable, fill = tCO2e)) +
  geom_tile() +
  scale_fill_continuous(low = "green", high = "red") +
  theme(axis.text.x = element_text(angle = 90)) +
  theme(legend.position="bottom") +
  labs(caption = rmdParams$dataSource,
         x = "Local Authority",
         y = "Emissions category")
Wider Hampshire area total territorial emissions (T CO2e 2019-20)

Figure 2.1: Wider Hampshire area total territorial emissions (T CO2e 2019-20)

2.2 Consumption emissions

Consumption emissions are most likely to be driven by differences in socio-economic context and numbers of households within a local authority.

Figure 2.2 shows the absolute values while figure 2.3 shows per household values.

dt <- solent_laAbsDT[source == "Consumption absolute", 
                     .(tCO2e = mean(value)),
                     keyby = .(variable, name)] 

t <- dcast(dt,  variable ~  name)
## Using 'tCO2e' as value column. Use 'value.var' to override
ft <- flextable::flextable(t)
ft <- set_caption(ft,
            caption = "Consumption emissions: absolute T CO2e")
ft <- colformat_num(ft, 2:10, digits = 2)
flextable::autofit(ft)
Table 2.3: Consumption emissions: absolute T CO2e

variable

Basingstoke and Deane

East Hampshire

Eastleigh

Fareham

Gosport

Hart

Havant

Isle of Wight

New Forest

Portsmouth

Rushmoor

Southampton

Test Valley

Winchester

Housing - Mains gas (t CO2e)

147,023.80

117,246.69

117,495.14

105,583.15

61,982.08

105,821.21

112,952.56

119,302.02

169,568.25

155539.938

84419.450

164399.336

91074.957

105049.916

Housing - Electricity (t CO2e)

78,059.00

59,941.29

51,081.78

46,645.44

33,380.57

43,065.63

51,269.58

67,417.29

82,569.40

76323.215

35761.935

98010.121

60124.250

57665.249

Housing - Oil (t CO2e)

56,696.59

39,414.71

1,776.53

2,433.82

76.44

9,516.95

704.05

18,384.06

40,393.22

17.495

61.145

102.500

73274.436

51180.021

Housing - LPG (t CO2e)

3,591.26

5,081.61

1,106.17

918.83

175.20

1,776.58

697.82

4,783.99

5,782.02

472.585

226.952

349.286

6643.444

6365.555

Housing - Biomass (t CO2e)

848.64

1,047.42

302.08

307.19

69.87

478.90

253.71

744.80

1,419.59

152.954

147.388

243.395

876.773

1112.843

Housing - Coal (t CO2e)

1,179.32

1,122.30

313.84

409.54

259.27

278.47

514.10

1,058.53

2,003.98

531.263

332.492

794.913

1146.400

1085.900

Consumption of goods and services - Purchase of goods (t CO2e)

249,350.07

188,326.16

181,326.08

162,899.47

97,039.92

154,756.47

151,830.73

181,236.46

257,279.44

229667.315

124249.039

269696.885

184028.387

191726.576

Consumption of goods and services - Use of services (t CO2e)

110,434.88

82,872.61

82,839.36

73,511.83

46,218.64

68,576.19

71,057.01

84,527.35

114,382.80

108708.192

57446.689

129434.285

80585.313

84128.660

Consumption of goods and services - Other consumption related emissions (t CO2e)

93,605.82

70,786.69

71,921.24

62,406.62

39,766.57

55,210.40

60,373.11

79,263.58

102,018.90

99150.544

47243.589

112449.240

67193.545

72751.843

Food and diet - Meat and fish (t CO2e)

159,118.58

113,845.35

116,788.50

103,375.66

69,666.46

91,210.36

105,606.04

128,237.36

163,084.59

165612.355

83281.746

194248.368

114742.400

113203.537

Food and diet - Other food and drink (t CO2e)

133,991.58

99,027.06

96,869.95

86,097.03

53,874.23

81,037.38

83,172.54

99,024.43

135,907.32

128713.531

68200.721

150160.752

97496.081

100080.657

Travel - Flights (t CO2e)

95,652.30

83,698.26

62,908.89

58,092.47

28,768.08

68,920.66

50,350.72

66,245.48

102,737.79

68645.586

42108.317

74771.654

77584.689

89310.739

Travel - Public transport (t CO2e)

37,843.81

27,154.95

25,543.66

21,526.11

15,460.93

20,999.78

22,915.82

31,072.10

37,860.87

37642.193

18023.989

45897.271

27672.811

29546.984

Travel - Private transport (t CO2e)

138,387.53

102,371.73

89,485.90

73,448.74

48,745.25

79,199.85

71,825.77

105,165.10

134,373.99

118462.281

61475.681

140611.780

101444.647

113175.199

Waste - Waste (t CO2e)

3,587.91

2,437.44

2,582.18

2,238.30

1,650.32

1,920.66

2,478.57

13,361.90

3,499.02

2808.465

1961.597

5027.028

2523.449

2360.321

ggplot2::ggplot(dt, aes(x = name, y = variable, fill = tCO2e)) +
  geom_tile() +
  scale_fill_continuous(low = "green", high = "red") +
  theme(axis.text.x = element_text(angle = 90)) +
  theme(legend.position="bottom") +
  labs(caption = rmdParams$dataSource,
         x = "Local Authority",
         y = "Emissions category")
Wider Hampshire area total consumption emissions (T CO2e 2019-20)

Figure 2.2: Wider Hampshire area total consumption emissions (T CO2e 2019-20)

dt <- solent_laPhDT[source %like% "Consumption", 
                     .(tCO2e = mean(value)),
                     keyby = .(variable, name)] 

t <- dcast(dt,  variable ~  name)
## Using 'tCO2e' as value column. Use 'value.var' to override
ft <- flextable::flextable(t)
ft <- set_caption(ft,
            caption = "Consumption emissions: per household T CO2e")
ft <- colformat_num(ft, 2:10, digits = 2)
flextable::autofit(ft)
Table 2.4: Consumption emissions: per household T CO2e

variable

Basingstoke and Deane

East Hampshire

Eastleigh

Hart

Isle of Wight

New Forest

Portsmouth

Southampton

Test Valley

Housing - Mains gas (t CO2e)

1.94

2.22

2.09

2.65

1.69

2.08

1.76

1.54

1.66

Housing - Electricity (t CO2e)

1.03

1.14

0.91

1.08

0.95

1.01

0.86

0.92

1.10

Housing - Oil (t CO2e)

0.75

0.75

0.03

0.24

0.26

0.49

0.00

0.00

1.34

Housing - LPG (t CO2e)

0.05

0.10

0.02

0.04

0.07

0.07

0.01

0.00

0.12

Housing - Biomass (t CO2e)

0.01

0.02

0.01

0.01

0.01

0.02

0.00

0.00

0.02

Housing - Coal (t CO2e)

0.02

0.02

0.01

0.01

0.01

0.03

0.01

0.01

0.02

Consumption of goods and services - Purchase of goods (t CO2e)

3.29

3.57

3.23

3.88

2.56

3.15

2.59

2.53

3.36

Consumption of goods and services - Use of services (t CO2e)

1.46

1.57

1.47

1.72

1.20

1.40

1.23

1.22

1.47

Consumption of goods and services - Other consumption related emissions (t CO2e)

1.23

1.34

1.28

1.38

1.12

1.25

1.12

1.06

1.23

Food and diet - Meat and fish (t CO2e)

2.10

2.16

2.08

2.29

1.81

2.00

1.87

1.82

2.10

Food and diet - Other food and drink (t CO2e)

1.77

1.88

1.72

2.03

1.40

1.66

1.45

1.41

1.78

Travel - Flights (t CO2e)

1.26

1.59

1.12

1.73

0.94

1.26

0.78

0.70

1.42

Travel - Public transport (t CO2e)

0.50

0.51

0.45

0.53

0.44

0.46

0.42

0.43

0.51

Travel - Private transport (t CO2e)

1.82

1.94

1.59

1.99

1.49

1.64

1.34

1.32

1.85

Waste - Waste (t CO2e)

0.05

0.05

0.05

0.05

0.19

0.04

0.03

0.05

0.05

ggplot2::ggplot(dt, aes(x = name, y = variable, fill = tCO2e)) +
  geom_tile() +
  scale_fill_continuous(low = "green", high = "red") +
  theme(axis.text.x = element_text(angle = 90)) +
  theme(legend.position="bottom") +
  labs(caption = rmdParams$dataSource,
         x = "Local Authority",
         y = "Emissions category")
Wider Hampshire area per household consumption emissions (T CO2e 2019-20)

Figure 2.3: Wider Hampshire area per household consumption emissions (T CO2e 2019-20)

3 Parish level

tbc

4 R Environment

Packages used:

  • data.table (Dowle et al. 2015)
  • ggplot2 (Wickham 2009)
  • flextable (Gohel 2020)

5 Annexes

References

Dowle, M, A Srinivasan, T Short, S Lianoglou with contributions from R Saporta, and E Antonyan. 2015. Data.table: Extension of Data.frame. https://CRAN.R-project.org/package=data.table.

Gohel, David. 2020. Flextable: Functions for Tabular Reporting. https://CRAN.R-project.org/package=flextable.

Wickham, Hadley. 2009. Ggplot2: Elegant Graphics for Data Analysis. Springer-Verlag New York. http://ggplot2.org.