ΟδηγίεςχρήσηςτουR,μέρος1 ο Προκαταρκτικά Κατεβάζουμετολογισμικόαπότηνιστοσελίδαhttp://cran.cc.uoc.gr/bin/windows/base/ Εγκαθιστούμετολογισμικόστονυπολογιστήμαςεκτελώνταςτοαρχείοπουκατεβάσαμε. ΤρέχουμετολογισμικόμεδιπλόκλικστομπλεεικονίδιοκαιβλέπουμετοπεριβάλλοντουR: Αρχικάθαπληκτρολογούμετιςεντολέςμαςστολευκόπαράθυρο.Αργότεραθααποθηκεύουμε σειρέςεντολώνσεξεχωριστάαρχεία,ώστεναέχουμεπρόσβασησεπροηγούμενεςεργασίες. Βασικέςαρχές Α.Αριθμητικέςπράξεις ΤοRεκτελείαριθμητικέςπράξειςγράφονταςαπλώςτησχετικήπαράσταση.Π.χ.,ανγράψουμε 2+3θαμαςδώσειτοαποτέλεσμα5: 2+3 [1] 5 Αυτάπουγράφουμεεμείςεμφανίζονταικόκκινα,ενώοιαπαντήσειςτουλογισμικούείναιμπλε, ώστενατιςξεχωρίζουμεεύκολα.το[1]σημαίνειότιβλέπουμετοπρώτοστοιχείοτης απάντησηςστοερώτημάμας(τοναριθμό5),πουστηνπερίπτωσηαυτήείναικαιτομοναδικό.
Παρομοίωςμπορούμενακάνουμεπρόσθεση,αφαίρεσηκλπ.: (8-5)*2/17 [1] 0.3529412 Γιαναυποδείξουμετηνεπιθυμητήσειράτωνπράξεων,χρησιμοποιούμεπαρενθέσεις.Στο παραπάνωπαράδειγμα,θέλουμεηδιαφορά8 5ναυπολογιστείπρώτα,καιμετάτο αποτέλεσμαναπολλαπλασιαστείμετοδύο. Τασύμβολατωνπράξεωνείναι:πρόσθεση+,αφαίρεση,πολλαπλασιασμός*,διαίρεση/ Γιαναυψώσουμεσεδύναμη,χρησιμοποιούμετοσύμβολο^: 2^3 [1] 8 Το2στην3 η δύναμη,δηλαδήπολλαπλασιασμένομετονεαυτότουτρειςφορές,είναι2 2 2=8. Β.Μεταβλητές ΤοRχρησιμοποιείμεταβλητές,στιςοποίεςμπορούμενακαταχωρίσουμεαριθμητικέςή κατηγορικέςτιμές.γιαπαράδειγμα,μπορούμενααποθηκεύσουμετηντιμή5στημεταβλητήa: a <- 5 Τοσύμβολο<-δείχνειπωςοαριθμός5«τοποθετείται»στηνετικέταa.Τοίδιοακριβώς αποτέλεσμαμπορούμεναπετύχουμεκαιγράφονταςπρώτατηντιμή,αρκείτοβέλοςναδείχνει προςτησωστήκατεύθυνση,δηλαδήτοόνοματηςμεταβλητής: 5 - a Μετάτηνανάθεση,τοaέχειπάρειτηντιμή5,καιθατηδιατηρήσειμέχρινατηναλλάξουμε. Στησυνέχειαμπορούμεναχρησιμοποιούμετοaσεοποιαδήποτεπράξησαναήταναριθμός: a-2 [1] 3 Γιαονόματαμεταβλητώνμπορούμεναχρησιμοποιήσουμεό,τιμαςβολεύει.Γιαπαράδειγμα, γιαναυπολογίσουμεέναδείκτησωματικήςμάζας,μπορούμεναγράψουμε: ypsos <- 1.81 varos <- 85 BMI <- varos / ypsos^2 BMI [1] 25.94548
Στοπαράδειγμααυτόχρησιμοποιήσαμετημεταβλητήμεόνομαypsosγιατούψος(σε μέτρα),τημεταβλητήμεόνομαvarosγιατοβάρος(σεκιλά),καιτημεταβλητήμεόνομαbmi γιατοδείκτη.φυσικάθαμπορούσαμεναείχαμεχρησιμοποιήσειοποιαδήποτεάλλαονόματα: a <- 1.81 b <- 85 i <- b / a^2 i [1] 25.94548 Προσοχή,ηυποδιαστολήτωνδεκαδικώναριθμώνείναιτελεία,όχικόμμα! Γ.Συναρτήσεις Λέγονταςσυναρτήσειςεννοούμε,πολύχοντρικά,προκαθορισμένεςαντιστοιχίεςήλειτουργίες πουεφαρμόζονταισεένανήπερισσότερουςαριθμούςκαιδίνουνσυγκεκριμένοαποτέλεσμα. Γιαπαράδειγμα,ητετραγωνικήρίζαενόςαριθμούδίνεταιαπότησυνάρτησηsqrt: sqrt(16) [1] 4 Ησυνάρτησηroundχρησιμοποιείταιγιατηστρογγυλοποίησητωνδεκαδικώνψηφίων.Έτσι, μπορούμενακρατήσουμεμόνοέναδεκαδικόαπότοδείκτησωματικήςμάζαςπου υπολογίσαμεπαραπάνω: round(bmi,1) [1] 25.9 Ανθέλαμεδύοδεκαδικάψηφία,θαέπρεπεναδώσουμεround(BMI,2).Ανπαραλείψουμε εντελώςτηνπαράμετροαυτή(τοδεύτεροαριθμό),εννοείταιτομηδέν(κανέναδεκαδικό). ΌλεςοισυναρτήσειςστοRδέχονταιταορίσματάτουςμέσασεπαρενθέσεις.Πρέπειναείμαστε πάνταπολύπροσεκτικοίστιςπαρενθέσεις,ναμηντιςξεχνάμε,διότιαυτόοδηγείσελάθη,π.χ. round BMI,2 Error: unexpected symbol in "round BMI" Ένασημείοπουπρέπειναπροσέχουμειδιαίτεραείναιότιόσεςπαρενθέσειςανοίγουμεπρέπει αντίστοιχανατιςκλείνουμε.ανλοιπόνέχουμεσυναρτήσειςμέσασεσυναρτήσεις,ήπράξειςμε παρενθέσειςμέσασεσυναρτήσεις,θαπρέπειναελέγχουμεότιγιακάθεπαρένθεσηπου ανοίγει(αριστερή)υπάρχεικαιηαντίστοιχηπουκλείνει(δεξιά). round(85/(1.81^2)) [1] 26
Ανξεχάσουμενακλείσουμεκάποιαπαρένθεση,τοRθεωρείότιδενέχουμετελειώσειμετην εντολήμαςκαιμαςπαρουσιάζειένα+(σεκόκκινοχρώμα)αναμένονταςτησυνέχεια. round(85/(1.81^2) + Στηνπερίπτωσηαυτή,δίνουμετηντελικήπαρένθεσησυνεχίονταςστηνεπόμενησειρά: + ) [1] 26 Δ.Ακολουθίες Πολλέςφορέςχρειάζεταιναεπεξεργαστούμεένασύνολοαπόαριθμούς,ωςμιαομάδαήμια ακολουθία.γιαπαράδειγμα,μπορείναθέλουμεναυπολογίσουμετοάθροισμαπερισσότερων απόδύοαριθμών.θαμπορούσαμενατουςπροσθέσουμεστησειρά,μετοσύμβολοτης πρόσθεσης: 5 + 2 + 6 + 8 + 3 [1] 24 Έτσιόμωςχάνουμετηδυνατότηταναδιατηρήσουμεαυτήτηνομάδααριθμώνγιαάλλες πράξεις,καιπρέπεινατουςγράφουμεαπότηναρχήκάθεφορά.γιατηνπερίπτωσηενός μοναδικούαριθμού,είδαμεπαραπάνωότιμπορούμεναχρησιμοποιήσουμεμιαμεταβλητή πουναδιατηρείτηντιμήτου.αντίστοιχα,γιατηνπερίπτωσηομάδωναριθμών, χρησιμοποιούμετησυνδυαστικήσυνάρτησηc,ηοποίαενώνειμιαομάδααριθμώνσεμια σταθερήακολουθία.ηομάδααυτήδίνεταιμέσασεζεύγοςπαρενθέσεων,όπουοι μεμονωμένοιαριθμοίχωρίζονταιμεκόμμα. omada <- c(5,2,6,8,3) Μετοντρόποαυτό,ημεταβλητήomadaπεριέχειπλέοναυτήντηνπεντάδααριθμών. omada [1] 5 2 6 8 3 Έτσι,ανθέλουμετοάθροισμααυτήςτηςομάδας,μπορούμεναχρησιμοποιήσουμεαπευθείας τησυνάρτησηsum: sum(omada) [1] 24
ΤοRμαςδίνεισυναρτήσειςγιαδιάφορουςχρήσιμουςυπολογισμούςομάδωναριθμών,όπως γιαπαράδειγματονεντοπισμότουμέγιστουκαιτουελάχιστου. min(omada) [1] 2 max(omada) [1] 8 Τοπλήθοςτωνστοιχείωνμιαςακολουθίαςδίνεταιαπότησυνάρτησηlength length(omada) [1] 5 Αργότεραθαδούμεπερισσότερεςσυναρτήσεις,πουθατιςχρειαστούμεγιατιςαναλύσειςμας. Προςτοπαρόν,εξασκηθείτεστηβασικήχρήσητουRχρησιμοποιώνταςτιςπαραπάνωπράξεις καισυναρτήσεις,καικατασκευάζονταςπαρόμοιαδικάσαςπαραδείγματα.πειραματιστείτεμε διαφορετικέςτιμέςκαιπαραστάσειςκαιμηφοβάστεότανδίνετεκάτιλάθος! ΑθανάσιοςΠρωτόπαπας Μάρτιος2012