Λέσχη Φίλων Στατιστικής - GrStats forum
R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Forumgrstats

Join the forum, it's quick and easy

Λέσχη Φίλων Στατιστικής - GrStats forum
R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Forumgrstats
Λέσχη Φίλων Στατιστικής - GrStats forum
Would you like to react to this message? Create an account in a few clicks or log in to continue.
Για προβλήματα εγγραφής και άλλες πληροφορίες επικοινωνήστε με : grstats.forum@gmail.com ή grstats@stat-athens.aueb.gr

Go down
avatar
philippos371
Posts : 3
Join date : 2016-09-30

R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Empty R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ?

Fri 30 Sep 2016 - 16:28
Καλησπέρα ! Θα ήθελα την βοήθεια σας σε ένα πρόβλημα γύρω από την R, και την κατασκευή συναρτήσεων.
Έστω κάποια δικιά μας συνάρτηση στην R. Γνωρίζουμε ότι υπάρχει : Όνομα, παράμετροι , το main body των εντολών και το return(), έτσι ώστε να δούμε τα αποτελέσματα.
Αυτό που θέλω είναι, να καλέσω ένα στοιχείο από το main body, δίχως όμως να το εμφανίσω στα return (π.χ. να το καλέσω με το δολάριο). Για παράδειγμα στην εντολή m<-lm(y~x), μπορώ να καλέσω τα κατάλοιπα της παλιδρόμησης ως m$res, όπου αυτά δεν εμφανίζονται με την lm(y~x). Στην δικιά μου περίπτωση που αφορά προσομείωση, εντος της συνάρτησης (ας την ονομάσουμε f ) , παράγω τυχαίο δείγμα (έστω S), εκτελώ διάφορες εντολές και εμφανίζω κάποια αποτελέσματα. Αυτό που θέλω είναι να καλέσω το δείγμα, δίχως να το εμφανίσω.
barney84
barney84
Posts : 19
Join date : 2014-01-25

R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Empty Re: R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ?

Sun 2 Oct 2016 - 15:24
Code:
test=function()
{
a=runif(15,1,30)
b=rgamma(15,1,30)
c=data.frame(proti=a,defteri=b)
return(c)
}


test()$defteri
Κάπως έτσι, επιστρέφεις ένα data frame στο οποίο μετά επιλέγεις ότι θέλεις να δείξεις με την ονομασία που του δψσες. Προσοχή άμα έχεις διαφορετικά μεγέθη πως θα επηρεάζει τον πίνακα. Δηλαδή θα θέλει λίγη δουλειά πρώτα ώστε να μπορεί να δουλέχει σωστά.
avatar
philippos371
Posts : 3
Join date : 2016-09-30

R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Empty Re: R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ?

Sun 2 Oct 2016 - 17:07
Ευχαριστώ πολύ ! Αλλά αν πατήσω την εντολή test() , πάλι μου επιστρέφει τα δύο αποτελέσματα . Γίνετε να μου επιστρέψει, όσον αφορά το παράδειγμα,
πατώντας την εντολή test() μόνο το διάνυσμα a=proti χωρίς το b=deuteri, και κατόπιν δικιάς μου επιλογής μετά,  να εμφανίσει την b=deuteri ως test()$deuteri ;
barney84
barney84
Posts : 19
Join date : 2014-01-25

R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Empty Re: R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ?

Mon 3 Oct 2016 - 18:57
Code:
Σου γράφω μια βελτίωση αν κ δεν ξέρω αν βολεύει
   test=function()
   {
   a=runif(15,1,30)
   b=rgamma(15,1,30)
   c=list(proti=a,defteri=b)
   print(c$proti)
return(c)
   }

a=test()
   test()$defteri
Ουσιαστικα κάνει print αυτό που θες να βλέπεις, αλλά βλέπεις και τα άλλα ξεχωριστά αν θες
R4ever
R4ever
Posts : 44
Join date : 2010-01-20
Age : 41

R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Empty Re: R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ?

Tue 4 Oct 2016 - 13:28
Prepei na grapseis mia print method gia tin synartisi, eite S3 or S4, p.x.,

Code:

foo <- function (x, y) {
  out <- list("sum" = x + y, "prod" = x * y)
  class(out) <- "foo"
  out
}

print.foo <- function (x, ...) {
  print(x$sum)
  invisible()
}

foo(1:3, 4:6)
foo(1:3, 4:6)$prod
avatar
philippos371
Posts : 3
Join date : 2016-09-30

R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ? Empty Re: R_function-Πως να καλέσω στοιχεία δίχως να τα εμφανίσει ?

Thu 6 Oct 2016 - 11:01
Σας ευχαριστώ πολύ !!
Back to top
Permissions in this forum:
You cannot reply to topics in this forum