ここでの1つの数値的アプローチは、各入力数を10で除算し、対数基数10の下限まで上げることです。これは、たとえば、の入力を、で除算123
して100
、を生成することを意味し1.23
ます。次に、そのフロアを使用して最初の桁を生成し1
ます。
getFirstDigit <- function(x) {
floor(x / (10 ^ floor(log10(x))))
}
d <- c(123, 2, 45)
getFirstDigit(d)
[1] 1 2 4
これを行うよりブルートフォースな方法は、入力ベクトルを文字にキャストし、最初の文字を取得してから、数値にキャストバックすることです。しかし、そのようにすることで、上記のパフォーマンスを上回るとは思えません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加