Я хочу вступити до цього, сказавши, що я абсолютно новачок у програмуванні, тому, будь ласка, вибачте, наскільки основним є це питання.
Я намагаюся краще зрозуміти "атомні" класи в R, і, можливо, це стосується класів програмування загалом. Я розумію різницю між класами символів, логічними та складними даними, але намагаюся знайти принципову різницю між числовим класом та цілим класом.
Скажімо, у мене є простий вектор x <- c(4, 5, 6, 6)
цілих чисел, це мало б сенс для цього бути цілочисельним класом. Але коли class(x)
я отримую [1] "numeric"
. Тоді, якщо я перетворю цей вектор у цілочисельний клас x <- as.integer(x)
. Він повертає той самий точний список чисел, за винятком того, що клас відрізняється.
Моє питання полягає в тому, чому це так, і чому класом за замовчуванням для набору цілих чисел є числовий клас, і які переваги та недоліки має ціле число, встановлене як числове, а не ціле.
as.integer(c(4.1, 5.2, 6.3, 6.4))
допомагає вам зрозуміти різницю? Ви повинні розуміти, що внутрішнє подання та те, що друкується, зовсім не однакові. У будь-якому випадку, почитайте про типи даних комп'ютерними мовами.