zoukankan      html  css  js  c++  java
  • r语言 function 指定多个返回值

    # Goals: To write functions
    #        To write functions that send back multiple objects.
     
    # FIRST LEARN ABOUT LISTS --
    X = list(height=5.4, weight=54)
    print("Use default printing --")
    print(X)
    print("Accessing individual elements --")
    cat("Your height is ", X$height, " and your weight is ", X$weight, "
    ")
     
    # FUNCTIONS --
    square <- function(x) {
      return(x*x)
    }
    cat("The square of 3 is ", square(3), "
    ")
     
                     # default value of the arg is set to 5.
    cube <- function(x=5) {
      return(x*x*x);
    }
    cat("Calling cube with 2 : ", cube(2), "
    ")    # will give 2^3
    cat("Calling cube        : ", cube(), "
    ")     # will default to 5^3.
     
    # LEARN ABOUT FUNCTIONS THAT RETURN MULTIPLE OBJECTS --
    powers <- function(x) {
      parcel = list(x2=x*x, x3=x*x*x, x4=x*x*x*x);
      return(parcel);
    }
     
    X = powers(3);
    print("Showing powers of 3 --"); print(X);
     
    # WRITING THIS COMPACTLY (4 lines instead of 7)
     
    powerful <- function(x) {
      return(list(x2=x*x, x3=x*x*x, x4=x*x*x*x));
    }
    print("Showing powers of 3 --"); print(powerful(3));
     
    # In R, the last expression in a function is, by default, what is
    # returned. So you could equally just say:
    powerful <- function(x) {list(x2=x*x, x3=x*x*x, x4=x*x*x*x)}
    

    即将多个返回对象,放入同一个list内

    a <- data.frame(b = c(1,2,3,4) , d = c('a','s','d','f'))

    z <- data.frame(max = c(1111) , min = c(1))

    e <- list(a,z)

    此时 e[[1]] 即是a 其class 即为dataframe

    e[[2]] 即是 z 其class也为dataframe

     
  • 相关阅读:
    交换两个变量的值的若干种方法
    排序算法之冒泡排序
    JAVA宇宙无敌复习资料
    HTML中Float和元素定位
    HTML盒子模型
    HTML表单
    HTML中Css补充资料
    HTML中Css详细介绍
    HTML表格及框架介绍
    HTML网页的基本结构及基本功能
  • 原文地址:https://www.cnblogs.com/awishfullyway/p/6626549.html
Copyright © 2011-2022 走看看