Numerical data contains all numerical represenations.

By far, the most common kind of data we use in our analyses is numerical data. This may represent measured things like height, snout-vent length (whatever that is), depth, age, etc. In data analysis, we commonly take (or obtain) measurements from several items and then try to characterize them using summaries and visualization.

In R, the numerical data type can be defined as:

X <- 42

Notice how the numerical value of 42 is assigned to the variable named X. To have R print out the value of a particular variable, you can type its name in the console and it will give it to you.

X
[1] 42

Operators

Numeric types have a ton of normal operators that can be used. Some examples include:

The usual arithmatic operators:

x <- 10
y <- 23

x + y
[1] 33
x - y
[1] -13
x * y
[1] 230
x / y
[1] 0.4347826

You have the exponentials:

## x raised to the y
x^y
[1] 1e+23
## the inverse of an exponent is a root, here is the 23rd root of 10
x^(1/y)
[1] 1.105295

The logrithmics:

## the natural log
log(x)
[1] 2.302585
## Base 10 log
log(x,base=10)
[1] 1

And the modulus operator:

y %% x
[1] 3

If you didn’t know what this one is, don’t worry. The modulus is just the remainder after division like you did in grade school. The above code means that 23 divided by 10 has a remainder of 3. I include it here just to highlight the fact that many of the operators that we will be working with in R are created by more than just a single symbol residing at the top row of your computer keyboard. There are just too few symbos on the normal keyboard to represent the breath of operators. The authors of R have decided that using combinations of symbols to handle these and you will get used to them in not time at all.

Introspection & Coercion

The class() of a numeric type is (wait for it)… numeric (those R programmers are sure clever).

class( 42 )
[1] "numeric"
numeric

In this case class is the name of the function and there are one or more things we pass to that function. These must be enclosed in the parenthesis associated with class. The parantheses must be right next to the name of the function. If you put a space betwen the word class and the parentheses, it may not work the way you would like it to. You’ve been warned.

The stuff inside the parenthesis are called arguments and are the data that we pass to the function itself. In this case we pass a value or varible to the class function and it does its magic and tells us what kind of data type it is. Many functions have several arguements that can be passed to them, some optional, some not. We will get more into that on the lecture covering Functions.

It is also possible to inquire if a particular variable is of a certain class. This is done by using the is.* set of functions.

is.numeric( 42 )
[1] TRUE
is.numeric( "dr dyer" )
[1] FALSE

Sometimes we may need to turn one kind of class into another kind. Consider the following:

x <- "42"
is.numeric( x )
[1] FALSE
class(x)
[1] "character"
character

It is a character data type because it is enclosed within a set of quotes. However, we can coerce it into a numeric type by:

y <- as.numeric( x )
is.numeric( y )
[1] TRUE
y
[1] 42
LS0tCnRpdGxlOiAiTnVtZXJpY2FsIERhdGEiCm91dHB1dDogCiAgaHRtbF9ub3RlYm9vazoKICAgICAgY3NzOiAiZW52czU0My1zdHlsZXMuY3NzIgotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQogIGxpYnJhcnkoZW1vKQpgYGAKCj4gTnVtZXJpY2FsIGRhdGEgY29udGFpbnMgYWxsIG51bWVyaWNhbCByZXByZXNlbmF0aW9ucy4KCkJ5IGZhciwgdGhlIG1vc3QgY29tbW9uIGtpbmQgb2YgZGF0YSB3ZSB1c2UgaW4gb3VyIGFuYWx5c2VzIGlzIG51bWVyaWNhbCBkYXRhLiBUaGlzIG1heSByZXByZXNlbnQgbWVhc3VyZWQgdGhpbmdzIGxpa2UgYGhlaWdodGAsIGBzbm91dC12ZW50IGxlbmd0aGAgKHdoYXRldmVyIHRoYXQgaXMpLCBgZGVwdGhgLCBgYWdlYCwgZXRjLiAgSW4gZGF0YSBhbmFseXNpcywgd2UgY29tbW9ubHkgdGFrZSAob3Igb2J0YWluKSBtZWFzdXJlbWVudHMgZnJvbSBzZXZlcmFsIGl0ZW1zIGFuZCB0aGVuIHRyeSB0byBjaGFyYWN0ZXJpemUgdGhlbSB1c2luZyBzdW1tYXJpZXMgYW5kIHZpc3VhbGl6YXRpb24uCgpJbiBgUmAsIHRoZSBudW1lcmljYWwgZGF0YSB0eXBlIGNhbiBiZSBkZWZpbmVkIGFzOgoKYGBge3J9ClggPC0gNDIKYGBgCgpOb3RpY2UgaG93IHRoZSBudW1lcmljYWwgdmFsdWUgb2YgYDQyYCBpcyBhc3NpZ25lZCB0byB0aGUgdmFyaWFibGUgbmFtZWQgYFhgLiAgVG8gaGF2ZSBgUmAgcHJpbnQgb3V0IHRoZSB2YWx1ZSBvZiBhIHBhcnRpY3VsYXIgdmFyaWFibGUsIHlvdSBjYW4gdHlwZSBpdHMgbmFtZSBpbiB0aGUgY29uc29sZSBhbmQgaXQgd2lsbCBnaXZlIGl0IHRvIHlvdS4KCmBgYHtyfQpYCmBgYAoKCiMjIE9wZXJhdG9ycwoKTnVtZXJpYyB0eXBlcyBoYXZlIGEgdG9uIG9mIG5vcm1hbCBvcGVyYXRvcnMgdGhhdCBjYW4gYmUgdXNlZC4gIFNvbWUgZXhhbXBsZXMgaW5jbHVkZTogCgpUaGUgdXN1YWwgKmFyaXRobWF0aWMgb3BlcmF0b3JzKjoKCmBgYHtyfQp4IDwtIDEwCnkgPC0gMjMKCnggKyB5CnggLSB5CnggKiB5CnggLyB5CmBgYAoKWW91IGhhdmUgdGhlICpleHBvbmVudGlhbHMqOgoKYGBge3J9CiMjIHggcmFpc2VkIHRvIHRoZSB5CnheeQoKIyMgdGhlIGludmVyc2Ugb2YgYW4gZXhwb25lbnQgaXMgYSByb290LCBoZXJlIGlzIHRoZSAyM3JkIHJvb3Qgb2YgMTAKeF4oMS95KQpgYGAKClRoZSAqbG9ncml0aG1pY3MqOgoKYGBge3J9CiMjIHRoZSBuYXR1cmFsIGxvZwpsb2coeCkKCiMjIEJhc2UgMTAgbG9nCmxvZyh4LGJhc2U9MTApCmBgYAoKQW5kIHRoZSAqbW9kdWx1cyBvcGVyYXRvcio6CgpgYGB7cn0KeSAlJSB4CmBgYAoKCgpJZiB5b3UgZGlkbid0IGtub3cgd2hhdCB0aGlzIG9uZSBpcywgZG9uJ3Qgd29ycnkuICBUaGUgbW9kdWx1cyBpcyBqdXN0IHRoZSAqcmVtYWluZGVyIGFmdGVyIGRpdmlzaW9uKiBsaWtlIHlvdSBkaWQgaW4gZ3JhZGUgc2Nob29sLiAgVGhlIGFib3ZlIGNvZGUgbWVhbnMgdGhhdCAqMjMgZGl2aWRlZCBieSAxMCBoYXMgYSByZW1haW5kZXIgb2YgMyouICBJIGluY2x1ZGUgaXQgaGVyZSBqdXN0IHRvIGhpZ2hsaWdodCB0aGUgZmFjdCB0aGF0IG1hbnkgb2YgdGhlIG9wZXJhdG9ycyB0aGF0IHdlIHdpbGwgYmUgd29ya2luZyB3aXRoIGluIGBSYCBhcmUgY3JlYXRlZCBieSBtb3JlIHRoYW4ganVzdCBhIHNpbmdsZSBzeW1ib2wgcmVzaWRpbmcgYXQgdGhlIHRvcCByb3cgb2YgeW91ciBjb21wdXRlciBrZXlib2FyZC4gIFRoZXJlIGFyZSBqdXN0IHRvbyBmZXcgc3ltYm9zIG9uIHRoZSBub3JtYWwga2V5Ym9hcmQgdG8gcmVwcmVzZW50IHRoZSBicmVhdGggb2Ygb3BlcmF0b3JzLiAgVGhlIGF1dGhvcnMgb2YgYFJgIGhhdmUgZGVjaWRlZCB0aGF0IHVzaW5nIGNvbWJpbmF0aW9ucyBvZiBzeW1ib2xzIHRvIGhhbmRsZSB0aGVzZSBhbmQgeW91IHdpbGwgZ2V0IHVzZWQgdG8gdGhlbSBpbiBub3QgdGltZSBhdCBhbGwuCgojIyBJbnRyb3NwZWN0aW9uICYgQ29lcmNpb24KClRoZSBgY2xhc3MoKWAgb2YgYSBudW1lcmljIHR5cGUgaXMgKHdhaXQgZm9yIGl0KS4uLiBgbnVtZXJpY2AgKHRob3NlIGBSYCBwcm9ncmFtbWVycyBhcmUgc3VyZSBjbGV2ZXIpLgoKYGBge3J9CmNsYXNzKCA0MiApCmBgYAoKPGRpdiBjbGFzcz0iYm94LXllbGxvdyI+SW4gdGhpcyBjYXNlIGBjbGFzc2AgaXMgdGhlIG5hbWUgb2YgdGhlIGZ1bmN0aW9uIGFuZCB0aGVyZSBhcmUgb25lIG9yIG1vcmUgdGhpbmdzIHdlIHBhc3MgdG8gdGhhdCBmdW5jdGlvbi4gIFRoZXNlICoqbXVzdCoqIGJlIGVuY2xvc2VkIGluIHRoZSBwYXJlbnRoZXNpcyBhc3NvY2lhdGVkIHdpdGggYGNsYXNzYC4gIFRoZSBwYXJhbnRoZXNlcyAqKm11c3QqKiBiZSAqcmlnaHQgbmV4dCB0byogdGhlIG5hbWUgb2YgdGhlIGZ1bmN0aW9uLiBJZiB5b3UgcHV0IGEgc3BhY2UgYmV0d2VuIHRoZSB3b3JkIGBjbGFzc2AgYW5kIHRoZSBwYXJlbnRoZXNlcywgaXQgbWF5IG5vdCB3b3JrIHRoZSB3YXkgeW91IHdvdWxkIGxpa2UgaXQgdG8uICBZb3UndmUgYmVlbiB3YXJuZWQuCgpUaGUgc3R1ZmYgaW5zaWRlIHRoZSBwYXJlbnRoZXNpcyBhcmUgY2FsbGVkICphcmd1bWVudHMqIGFuZCBhcmUgdGhlIGRhdGEgdGhhdCB3ZSBwYXNzIHRvIHRoZSBmdW5jdGlvbiBpdHNlbGYuIEluIHRoaXMgY2FzZSB3ZSBwYXNzIGEgdmFsdWUgb3IgdmFyaWJsZSB0byB0aGUgYGNsYXNzYCBmdW5jdGlvbiBhbmQgaXQgZG9lcyBpdHMgbWFnaWMgYW5kIHRlbGxzIHVzIHdoYXQga2luZCBvZiBkYXRhIHR5cGUgaXQgaXMuICBNYW55IGZ1bmN0aW9ucyBoYXZlIHNldmVyYWwgYXJndWVtZW50cyB0aGF0IGNhbiBiZSBwYXNzZWQgdG8gdGhlbSwgc29tZSBvcHRpb25hbCwgc29tZSBub3QuICBXZSB3aWxsIGdldCBtb3JlIGludG8gdGhhdCBvbiB0aGUgbGVjdHVyZSBjb3ZlcmluZyBbRnVuY3Rpb25zXShodHRwczovL2R5ZXJsYWIuZ2l0aHViLmlvL0VOVlMtTGVjdHVyZXMvZnVuY3Rpb25zL3NsaWRlcy5odG1sKS48L2Rpdj4KCkl0IGlzIGFsc28gcG9zc2libGUgdG8gaW5xdWlyZSBpZiBhIHBhcnRpY3VsYXIgdmFyaWFibGUgaXMgb2YgYSBjZXJ0YWluIGNsYXNzLiAgVGhpcyBpcyBkb25lIGJ5IHVzaW5nIHRoZSBgaXMuKmAgc2V0IG9mIGZ1bmN0aW9ucy4KCmBgYHtyfQppcy5udW1lcmljKCA0MiApCmlzLm51bWVyaWMoICJkciBkeWVyIiApCmBgYAoKU29tZXRpbWVzIHdlIG1heSBuZWVkIHRvIHR1cm4gb25lIGtpbmQgb2YgY2xhc3MgaW50byBhbm90aGVyIGtpbmQuICAgQ29uc2lkZXIgdGhlIGZvbGxvd2luZzoKCmBgYHtyfQp4IDwtICI0MiIKaXMubnVtZXJpYyggeCApCmNsYXNzKHgpCmBgYAoKSXQgaXMgYSBgY2hhcmFjdGVyYCBkYXRhIHR5cGUgYmVjYXVzZSBpdCBpcyBlbmNsb3NlZCB3aXRoaW4gYSBzZXQgb2YgcXVvdGVzLiAgSG93ZXZlciwgd2UgY2FuICpjb2VyY2UqIGl0IGludG8gYSBudW1lcmljIHR5cGUgYnk6CgpgYGB7cn0KeSA8LSBhcy5udW1lcmljKCB4ICkKaXMubnVtZXJpYyggeSApCnkKYGBgCgoKCgo=