Create DataFrame from data in DataFrameRow

Nice solution. When trying it myself, also used stack like you did in:

There might be a possible feature addition to stack which could be useful in this case. The idea is to use:

julia> stack(DataFrame(dfrow),r"([a-zA-Z]+) (.+)")

which selects columns using a RegEx. But there is additional information in this RegEx which are capture groups. We can make stack use extracted capture groups and make them into columns in the output, essentially getting with the above RegEx the extra processing done with the select. Note that:

julia> match.(r"([a-zA-Z]+) (.+)", names(dfrow))
4-element Vector{RegexMatch{String}}:
 RegexMatch("Carbon Min. (%)", 1="Carbon", 2="Min. (%)")
 RegexMatch("Carbon Max. (%)", 1="Carbon", 2="Max. (%)")
 RegexMatch("Phosphorus Min. (%)", 1="Phosphorus", 2="Min. (%)")
 RegexMatch("Phosphorus Max. (%)", 1="Phosphorus", 2="Max. (%)")

This can often be useful when parsing numbered columns, which come as year1984 or some other weird format.

Is this a useful feature?