30%の需要があるとのことなので、出てくるかと思ったが、出ないのね。
ありそうなので、探したんだけど、無いから自分で作った。
習い初めのものなので、つっこみはご勘弁。

# 多次元配列と文字列の複製
# dataの値を新しいアドレスを作成して複製
def copy(data)
if Array.try_convert(data) == nil
String.try_convert(data) ? data.dup : data
else
(0 ... data.size).map{|i|
copy(data[i])
}
end
end