次のエラーメッセージに問題があります
無効な正規表現'([aZ] *)_(。*)'、理由'無効な文字範囲'
したがって、エラーの原因となるコード行は次のとおりです。
if(tide=="long") names(problem) <- sub("([a-Z]*)_(.*)","\\2",problem)
したがって、関数のパラメータtideにlongが選択されている場合は、問題の名前を定義する必要があります。
しかしfunction(...,tide="long",..)
、上記のエラーメッセージを入力すると表示されます。