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

     
  • 相关阅读:
    Swift 面向对象解析(二)
    Swift 面向对象解析(一)
    iOS 动画笔记 (二)
    iOS 动画笔记 (一)
    UICollectionView 很简单的写个瀑布流
    MVC校验
    win8.1弹框
    Python开发之pip使用详解
    MySQL基础之数据类型和运算符
    网络爬虫之scrapy爬取某招聘网手机APP发布信息
  • 原文地址:https://www.cnblogs.com/awishfullyway/p/6626549.html
Copyright © 2011-2022 走看看