Skip to content

Commit

Permalink
Refactor for DataFrames v0.21 compatibility (#63)
Browse files Browse the repository at this point in the history
* refactor: use new DataFrames groupby syntax

* refactor: use innerjoin instead of join for DataFrame

* chore: update DataFrames compatibility from 0.20 to 0.21

* chore: update Manifest.toml for DataFrames 0.21.4
  • Loading branch information
danielolsen authored Jul 23, 2020
1 parent 75b7897 commit df01f66
Show file tree
Hide file tree
Showing 3 changed files with 89 additions and 95 deletions.
177 changes: 85 additions & 92 deletions Manifest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,23 +9,17 @@ git-tree-sha1 = "9e62e66db34540a0c919d72172cc2f642ac71260"
uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
version = "0.5.0"

[[BinDeps]]
deps = ["Libdl", "Pkg", "SHA", "URIParser", "Unicode"]
git-tree-sha1 = "46cf2c1668ad07aba5a9d331bdeea994a1f13856"
uuid = "9e28174c-4ba2-5203-b857-d8d62c4213ee"
version = "1.0.1"

[[BinaryProvider]]
deps = ["Libdl", "Logging", "SHA"]
git-tree-sha1 = "428e9106b1ff27593cbd979afac9b45b82372b8c"
uuid = "b99e7846-7c00-51b0-8f62-c81ae34c0232"
version = "0.5.9"

[[Blosc]]
deps = ["BinaryProvider", "CMakeWrapper", "Libdl"]
git-tree-sha1 = "9981f1795919b8f770dc064fe733ba09c2e7c7a9"
deps = ["Blosc_jll"]
git-tree-sha1 = "84cf7d0f8fd46ca6f1b3e0305b4b4a37afe50fd6"
uuid = "a74b3585-a348-5f62-a45c-50e91977d574"
version = "0.6.0"
version = "0.7.0"

[[Blosc_jll]]
deps = ["Libdl", "Lz4_jll", "Pkg", "Zlib_jll", "Zstd_jll"]
git-tree-sha1 = "aa9ef39b54a168c3df1b2911e7797e4feee50fbe"
uuid = "0b7ba130-8d10-5ba8-a3d6-c5182647fed9"
version = "1.14.3+1"

[[BufferedStreams]]
deps = ["Compat", "Test"]
Expand All @@ -39,23 +33,11 @@ git-tree-sha1 = "3663bfffede2ef41358b6fc2e1d8a6d50b3c3904"
uuid = "6e34b625-4abd-537c-b88f-471c36dfa7a0"
version = "1.0.6+2"

[[CMake]]
deps = ["BinDeps"]
git-tree-sha1 = "50a8b41d2c562fccd9ab841085fc7d1e2706da82"
uuid = "631607c0-34d2-5d66-819e-eb0f9aa2061a"
version = "1.2.0"

[[CMakeWrapper]]
deps = ["BinDeps", "CMake", "Libdl", "Parameters", "Test"]
git-tree-sha1 = "16d4acb3d37dc05b714977ffefa8890843dc8985"
uuid = "d5fb7624-851a-54ee-a528-d3f3bac0b4a0"
version = "0.2.3"

[[CSV]]
deps = ["CategoricalArrays", "DataFrames", "Dates", "FilePathsBase", "Mmap", "Parsers", "PooledArrays", "Tables", "Unicode", "WeakRefStrings"]
git-tree-sha1 = "fe9b828d5e7b55431d75d6d180ef843d69dea048"
deps = ["CategoricalArrays", "DataFrames", "Dates", "Mmap", "Parsers", "PooledArrays", "SentinelArrays", "Tables", "Unicode"]
git-tree-sha1 = "f095e44feec53d0ae809714a78c25908d1f370e6"
uuid = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
version = "0.5.23"
version = "0.7.4"

[[Calculus]]
deps = ["LinearAlgebra"]
Expand All @@ -64,22 +46,22 @@ uuid = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9"
version = "0.5.1"

[[CategoricalArrays]]
deps = ["Compat", "DataAPI", "Future", "JSON", "Missings", "Printf", "Reexport", "Statistics", "Unicode"]
git-tree-sha1 = "23d7324164c89638c18f6d7f90d972fa9c4fa9fb"
deps = ["DataAPI", "Future", "JSON", "Missings", "Printf", "Statistics", "Unicode"]
git-tree-sha1 = "a6c17353ee38ddab30e73dcfaa1107752de724ec"
uuid = "324d7699-5711-5eae-9e2f-1d82baa6b597"
version = "0.7.7"
version = "0.8.1"

[[CodecBzip2]]
deps = ["Bzip2_jll", "Libdl", "TranscodingStreams"]
git-tree-sha1 = "2fee975d68f9a8b22187ae86e33c0829b30cf231"
git-tree-sha1 = "2e62a725210ce3c3c2e1a3080190e7ca491f18d7"
uuid = "523fee87-0ab8-5b00-afb7-3ecf72e48cfd"
version = "0.7.1"
version = "0.7.2"

[[CodecZlib]]
deps = ["BinaryProvider", "Libdl", "TranscodingStreams"]
git-tree-sha1 = "05916673a2627dd91b4969ff8ba6941bc85a960e"
deps = ["TranscodingStreams", "Zlib_jll"]
git-tree-sha1 = "ded953804d019afa9a3f98981d99b33e3db7b6da"
uuid = "944b1d66-785c-5afd-91f1-9de20f533193"
version = "0.6.0"
version = "0.7.0"

[[CommonSubexpressions]]
deps = ["MacroTools", "Test"]
Expand All @@ -89,9 +71,9 @@ version = "0.3.0"

[[Compat]]
deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "SHA", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"]
git-tree-sha1 = "fecfed095803b86cc06fd7ee09d3d2c98fad4dac"
git-tree-sha1 = "a6a8197ae253f2c1a22b2ae17c2dfaf5812c03aa"
uuid = "34da2185-b29b-5c13-b0c7-acf172513d20"
version = "3.9.0"
version = "3.13.0"

[[CompilerSupportLibraries_jll]]
deps = ["Libdl", "Pkg"]
Expand All @@ -112,15 +94,15 @@ version = "1.3.0"

[[DataFrames]]
deps = ["CategoricalArrays", "Compat", "DataAPI", "Future", "InvertedIndices", "IteratorInterfaceExtensions", "Missings", "PooledArrays", "Printf", "REPL", "Reexport", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"]
git-tree-sha1 = "00136fcd39d503e66ab1b2eab800c47deaf7ca04"
git-tree-sha1 = "d4436b646615928b634b37e99a3288588072f851"
uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
version = "0.20.0"
version = "0.21.4"

[[DataStructures]]
deps = ["InteractiveUtils", "OrderedCollections"]
git-tree-sha1 = "6166ecfaf2b8bbf2b68d791bc1d54501f345d314"
git-tree-sha1 = "edad9434967fdc0a2631a65d902228400642120c"
uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
version = "0.17.15"
version = "0.17.19"

[[DataValueInterfaces]]
git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6"
Expand Down Expand Up @@ -151,12 +133,6 @@ version = "1.0.1"
deps = ["Random", "Serialization", "Sockets"]
uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b"

[[FilePathsBase]]
deps = ["Dates", "LinearAlgebra", "Printf", "Test", "UUIDs"]
git-tree-sha1 = "2cd6e2e7965934f72cb80251f760228e2264bab3"
uuid = "48062228-2e41-5def-b9a4-89aafe57970f"
version = "0.7.0"

[[ForwardDiff]]
deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "NaNMath", "Random", "SpecialFunctions", "StaticArrays"]
git-tree-sha1 = "1d090099fb82223abc48f7ce176d3f7696ede36d"
Expand All @@ -169,21 +145,27 @@ uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820"

[[Gurobi]]
deps = ["Libdl", "LinearAlgebra", "MathOptInterface", "MathProgBase", "SparseArrays"]
git-tree-sha1 = "3d031829eee9a2baf817065944be81bb37615201"
git-tree-sha1 = "f36a2fa62909675681aec582ccfc4a4a629406e4"
uuid = "2e9cd046-0924-5485-92f1-d5272153d98b"
version = "0.7.5"
version = "0.8.1"

[[HDF5]]
deps = ["BinaryProvider", "Blosc", "CMakeWrapper", "Libdl", "Mmap"]
git-tree-sha1 = "d3ea5532668bf9bdd5e8d5f16571e0b520cbbb9f"
deps = ["Blosc", "HDF5_jll", "Libdl", "Mmap", "Random"]
git-tree-sha1 = "7048678fa1970aaf867f3e99b90f3e85a9847124"
uuid = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f"
version = "0.12.5"
version = "0.13.2"

[[HDF5_jll]]
deps = ["Libdl", "Pkg", "Zlib_jll"]
git-tree-sha1 = "85bd2e586a10ae0eab856125bf5245e0d36384a7"
uuid = "0234f1f7-429e-5d53-9886-15a909be8d59"
version = "1.10.5+5"

[[HTTP]]
deps = ["Base64", "Dates", "IniFile", "MbedTLS", "Sockets"]
git-tree-sha1 = "fe31f4ff144392ad8176f5c7c03cca6ba320271c"
git-tree-sha1 = "eca61b35cdd8cd2fcc5eec1eda766424a995b02f"
uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3"
version = "0.8.14"
version = "0.8.16"

[[IniFile]]
deps = ["Test"]
Expand Down Expand Up @@ -213,10 +195,10 @@ uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
version = "0.21.0"

[[JSONSchema]]
deps = ["BinaryProvider", "HTTP", "JSON"]
git-tree-sha1 = "b0a7f9328967df5213691d318a03cf70ea8c76b1"
deps = ["HTTP", "JSON", "ZipFile"]
git-tree-sha1 = "832a4d327d9dafdae55a6ecae04f9997c83615cc"
uuid = "7d188eb4-7ad8-530c-ae41-71a32a6d4692"
version = "0.2.0"
version = "0.3.0"

[[JuMP]]
deps = ["Calculus", "DataStructures", "ForwardDiff", "LinearAlgebra", "MathOptInterface", "MutableArithmetics", "NaNMath", "Random", "SparseArrays", "Statistics"]
Expand All @@ -238,11 +220,17 @@ uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
[[Logging]]
uuid = "56ddb016-857b-54e1-b83d-db4d58db5568"

[[Lz4_jll]]
deps = ["Libdl", "Pkg"]
git-tree-sha1 = "51b1db0732bbdcfabb60e36095cc3ed9c0016932"
uuid = "5ced341a-0733-55b8-9ab6-a4889d929147"
version = "1.9.2+2"

[[MAT]]
deps = ["BufferedStreams", "CodecZlib", "HDF5", "SparseArrays"]
git-tree-sha1 = "33db0ab3000dabd036867b3dd09b41c29a31ed9a"
git-tree-sha1 = "6a48d291b26d295c62670d956e083926332befb3"
uuid = "23992714-dd62-5051-b70f-ba57cb901cac"
version = "0.7.0"
version = "0.8.0"

[[MacroTools]]
deps = ["Markdown", "Random"]
Expand All @@ -256,9 +244,9 @@ uuid = "d6f4376e-aef5-505a-96c1-9c027394607a"

[[MathOptInterface]]
deps = ["BenchmarkTools", "CodecBzip2", "CodecZlib", "JSON", "JSONSchema", "LinearAlgebra", "MutableArithmetics", "OrderedCollections", "SparseArrays", "Test", "Unicode"]
git-tree-sha1 = "27f2ef85879b8f1d144266ab44f076ba0dfbd8a1"
git-tree-sha1 = "cd2049c055c7d192a235670d50faa375361624ba"
uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
version = "0.9.13"
version = "0.9.14"

[[MathProgBase]]
deps = ["LinearAlgebra", "SparseArrays"]
Expand All @@ -274,9 +262,9 @@ version = "1.0.2"

[[MbedTLS_jll]]
deps = ["Libdl", "Pkg"]
git-tree-sha1 = "c83f5a1d038f034ad0549f9ee4d5fac3fb429e33"
git-tree-sha1 = "a0cb0d489819fa7ea5f9fa84c7e7eba19d8073af"
uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1"
version = "2.16.0+2"
version = "2.16.6+1"

[[Missings]]
deps = ["DataAPI"]
Expand All @@ -289,9 +277,9 @@ uuid = "a63ad114-7e13-5084-954f-fe012c677804"

[[MutableArithmetics]]
deps = ["LinearAlgebra", "SparseArrays", "Test"]
git-tree-sha1 = "e1edd618a8f39d16f8595dd622a63b25f759cf8a"
git-tree-sha1 = "6cf09794783b9de2e662c4e8b60d743021e338d0"
uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0"
version = "0.2.9"
version = "0.2.10"

[[NaNMath]]
git-tree-sha1 = "c84c576296d0e2fbb3fc134d3e09086b3ea617cd"
Expand All @@ -305,22 +293,15 @@ uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e"
version = "0.5.3+3"

[[OrderedCollections]]
deps = ["Random", "Serialization", "Test"]
git-tree-sha1 = "c4c13474d23c60d20a67b217f1d7f22a40edf8f1"
git-tree-sha1 = "293b70ac1780f9584c89268a6e2a560d938a7065"
uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
version = "1.1.0"

[[Parameters]]
deps = ["OrderedCollections"]
git-tree-sha1 = "b62b2558efb1eef1fa44e4be5ff58a515c287e38"
uuid = "d96e819e-fc66-5662-9728-84c9c7592b0a"
version = "0.12.0"
version = "1.3.0"

[[Parsers]]
deps = ["Dates", "Test"]
git-tree-sha1 = "0c16b3179190d3046c073440d94172cfc3bb0553"
git-tree-sha1 = "10134f2ee0b1978ae7752c41306e131a684e1f06"
uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0"
version = "0.3.12"
version = "1.0.7"

[[Pkg]]
deps = ["Dates", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "UUIDs"]
Expand Down Expand Up @@ -359,6 +340,12 @@ version = "0.2.0"
[[SHA]]
uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce"

[[SentinelArrays]]
deps = ["Dates", "Random"]
git-tree-sha1 = "cd9dccb026262a46d5a81ef1ce1e595150b2b8d2"
uuid = "91c51154-3ec4-41a3-a24f-3f23e20d615c"
version = "1.2.9"

[[Serialization]]
uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b"

Expand Down Expand Up @@ -403,9 +390,9 @@ version = "1.0.0"

[[Tables]]
deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "TableTraits", "Test"]
git-tree-sha1 = "aaed7b3b00248ff6a794375ad6adf30f30ca5591"
git-tree-sha1 = "c45dcc27331febabc20d86cb3974ef095257dcf3"
uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
version = "0.2.11"
version = "1.0.4"

[[Test]]
deps = ["Distributed", "InteractiveUtils", "Logging", "Random"]
Expand All @@ -417,12 +404,6 @@ git-tree-sha1 = "7c53c35547de1c5b9d46a4797cf6d8253807108c"
uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa"
version = "0.9.5"

[[URIParser]]
deps = ["Unicode"]
git-tree-sha1 = "53a9f49546b8d2dd2e688d216421d050c9a31d0d"
uuid = "30578b45-9adc-5946-b283-645ec420af67"
version = "0.4.1"

[[UUIDs]]
deps = ["Random", "SHA"]
uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"
Expand All @@ -435,8 +416,20 @@ git-tree-sha1 = "80229be1f670524750d905f8fc8148e5a8c4537f"
uuid = "81def892-9a0e-5fdd-b105-ffc91e053289"
version = "1.2.0"

[[WeakRefStrings]]
deps = ["DataAPI", "Random", "Test"]
git-tree-sha1 = "28807f85197eaad3cbd2330386fac1dcb9e7e11d"
uuid = "ea10d353-3f73-51f8-a26c-33c1cb351aa5"
version = "0.6.2"
[[ZipFile]]
deps = ["Libdl", "Printf", "Zlib_jll"]
git-tree-sha1 = "254975fef2fc526583bb9b7c9420fe66ffe09f2f"
uuid = "a5390f91-8eb1-5f08-bee0-b1d1ffed6cea"
version = "0.9.2"

[[Zlib_jll]]
deps = ["Libdl", "Pkg"]
git-tree-sha1 = "622d8b6dc0c7e8029f17127703de9819134d1b71"
uuid = "83775a58-1f1d-513f-b197-d71354ab007a"
version = "1.2.11+14"

[[Zstd_jll]]
deps = ["Libdl", "Pkg"]
git-tree-sha1 = "b25b0fb10176c42e9a5a20e1f40d570ac0288d4e"
uuid = "3161d3a3-bdf6-5164-811a-617609db77b4"
version = "1.4.5+0"
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[compat]
DataFrames = "0.20"
DataFrames = "0.21"
JuMP = "0.21.3"
5 changes: 3 additions & 2 deletions src/model.jl
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,13 @@ function _make_bus_demand(case::Case, start_index::Int, end_index::Int)::Matrix
bus_idx = 1:length(case.busid)
bus_df = DataFrames.DataFrame(
name=case.busid, load=case.bus_demand, zone=case.bus_zone)
zone_demand = DataFrames.by(bus_df, :zone, :load => sum)
zone_demand = DataFrames.combine(
DataFrames.groupby(bus_df, :zone), :load => sum)
zone_list = sort(collect(Set(case.bus_zone)))
num_zones = length(zone_list)
zone_idx = 1:num_zones
zone_id2idx = Dict(zone_list .=> zone_idx)
bus_df_with_zone_load = join(bus_df, zone_demand, on = :zone)
bus_df_with_zone_load = DataFrames.innerjoin(bus_df, zone_demand, on = :zone)
bus_share = bus_df[:, :load] ./ bus_df_with_zone_load[:, :load_sum]
bus_zone_idx = Int64[zone_id2idx[z] for z in case.bus_zone]
zone_to_bus_shares = sparse(
Expand Down

0 comments on commit df01f66

Please sign in to comment.