Sign in to follow this  
Followers 0
  • entries
    6
  • comments
    0
  • views
    1.663

About this blog

A test of the local blog platform

Entries in this blog

bromptonista

To R έχει ισχυρές συναρτήσεις  για την επανακωδικοποίηση μεταβλητών που περιέχουν κείμενο, συχνό πρόβλημα στις ιατρικές έρευνες.

Για παράδειγμα, έχουμε μια βάση δεδομένων retrospective.cohort με ιστολογικά (στη μεταβλητή TNM7) από καρκίνους με το σύστημα ΤΝΜ (σε μορφή pT1a pN1) και θέλουμε να δημιουργήσουμε άλλες μεταβλητές για χωριστά T/N και ομαδοποίηση όλες τις κατηγορίες. Αυτό γίνεται με τη συνάρτηση grepl ως εξής:

attach(retrospective.cohort)
retrospective.cohort$sizecat[grepl("T1", TNM7) ] <- "T1"
retrospective.cohort$sizecat[grepl("T2", TNM7) ] <- "T2"
retrospective.cohort$sizecat[grepl("T3", TNM7)  ] <- "T3"
retrospective.cohort$sizecat[grepl("T4", TNM7)  ] <- "T4"

retrospective.cohort$lncat[grepl("N0", TNM7) ] <- "0"
retrospective.cohort$lncat[grepl("N1", TNM7) ] <- "1"
retrospective.cohort$lncat[grepl("N2", TNM7) ] <- "1"
retrospective.cohort$lncat[grepl("N3", TNM7) ] <- "1"
detach(retrospective.cohort)

emtoilet

bromptonista

Πολλές φορές χρειάζεται να αλλάξουμε κάποιες μεταβλητές για την ανάλυσή μας - πχ μια συνεχή μεταβλητή σε ομάδες.

Πολύ συνηθισμένο στις ιατρικές έρευνες ή στις δημοσκοπήσεις είναι να φτιάχνει κανείς ηλικιακές κατηγορίες. Αυτό γίνεται ως εξής: 

# Τρεις κατηγορίες - η βάση δεδομένων είναι dedomena και η μεταβλητή με την ηλικία age
attach(dedomena)
dedomena$agecat[age > 65] <- "3"
dedomena$agecat[age > 50 & age <= 65] <- "2"
dedomena$agecat[age <= 50] <- "1"
detach(dedomena)

Πηγή: http://www.statmethods.net/management/variables.html, από όπου βέβαια το πρώτο παράδειγμα δε δουλεύει αν έχετε τιμές που λείπουν (NA)
emtoilet

bromptonista

Πολλές φορές χρειάζεται να αλλάξουμε κάποιες μεταβλητές για την ανάλυσή μας - πχ μια συνεχή μεταβλητή σε ομάδες.

Πολύ συνηθισμένο στις ιατρικές έρευνες ή στις δημοσκοπήσεις είναι να φτιάχνει κανείς ηλικιακές κατηγορίες. Αυτό γίνεται ως εξής: 

# Δυο κατηγορίες - η βάση δεδομένων είναι dedomena και η μεταβλητή με την ηλικία age 
dedomena$agecat <- ifelse(dedomena$age > 50, 
c("old"), c("young")) 

# Τρεις κατηγορίες - η βάση δεδομένων είναι dedomena και η μεταβλητή με την ηλικία age
attach(dedomena)
dedomena$agecat[age > 65] <- "3"
dedomena$agecat[age > 50 & age <= 65] <- "2"
dedomena$agecat[age <= 50] <- "1"
detach(dedomena)

Πηγή: http://www.statmethods.net/management/variables.html
emtoilet

bromptonista

Μεταβλητές στο R

Οι μεταβλητές είναι πολύ σημαντικές για μια γλώσσα προγραμματισμού, τα μαθηματικά και τη στατιστική.

Το R αποθηκεύει μεταβλητές με δυο σύμβολα: το "<-" (προτιμότερο) και το "=" (που χρησιμοποιούν και πολλές άλλες γλώσσες).

Πληκτρολογώντας τη μεταβλητή, το R εμφανίζει την τιμή της.

> x <- 55
> x
[1] 55
> katidikamou <- "kati dika mou"
> katidikamou
[1] "kati dika mou"
> ypsos <- 1.90
> ypsos
[1] 1.9
> height <- ypsos
> height
[1] 1.9
> baros = 80
> baros
[1] 80
> bmi = baros / ypsos ^ 2
> bmi
[1] 22.16066

emtoilet

bromptonista

Δεν είπαμε ότι θα ξεκινήσουμε με τα βασικά;

Πρόσθεση:

> 5 + 11
[1] 16

Αφαίρεση:

> 13 - 8
[1] 5

Πολλαπλασιασμός:

> 9 *7
[1] 63

Διαίρεση:

85 / 5
[1] 17

Ύψωση σε δύναμη:

> 2 ^ 3
[1] 8

Τετραγωνική ρίζα:

> sqrt(16)
[1] 4

Λογάριθμοι (log για το φυσικό-νεπέρειο λογάριθμο, log10 για λογάριθμο με βάση 10, log(x,βάση) για λογάριθμο του x με οποιαδήποτε βάση:

> log(1000)
[1] 6.907755
> log10(1000)
[1] 3
> log(1000,3)
[1] 6.28771

Εκθετική συνάρτηση:

> exp(3)
[1] 20.08554

emtoilet

bromptonista

Αποφάσισα να γράψω ένα blog στο Invision αφού δε γράφει κανείς άλλος.

Αντί να γράψω γενικολογίες, θα ασχοληθώ με κάτι εξειδικευμένο, που ξέρω αρκετά καλά και μπορεί και κάποιος άλλος να το βρει χρήσιμο: τη γλώσσα στατιστικού προγραμματισμού R.

To R είναι δωρεάν, κατεβάστε το και εγκαταστήστε το από το http://www.r-project.org. Εγκαταστήστε επίσης το RStudio από το http://www.rstudio.com.

Αντί εισαγωγής λοιπόν, το πρώτο ποστ είναι πως να κάνετε το R να πει καλημέρα:

Γράφετε το παρακάτω:

cat('Hello, world!\n')

Και επιλέγετε είτε Run είτε το σώζετε ως αρχείο helloworld.R και μετά τρέχετε την εντολή:

source('helloworld.R')

emtoilet

Sign in to follow this  
Followers 0