Skip to Content
R 语言经典实例(原书第 2 版)
book

R 语言经典实例(原书第 2 版)

by J.D. Long, Paul Teetor
June 2020
Beginner to intermediate
522 pages
9h 6m
Chinese
China Machine Press
Content preview from R 语言经典实例(原书第 2 版)
462
15
15.4 创建局部变量
15.4.1 问题
需要创建一个函数
局部
变量,即在函数内部创建的变量,在函数内部使用,并在函数完
成时删除。
15.4.2 解决方案
在函数内部,只需为变量名赋值即可。该变量自动成为局部变量,并在函数完成时删除。
15.4.3 讨论
此函数将向量 x 映射到单位区间。它需要两个中间变量,即 low high
unitInt <- function(x) {
low <- min(x)
high <- max(x)
(x - low) / (high - low)
}
赋值语句自动创建 low high。因为赋值发生在函数体内,所以变量 low high
函数的局部变量。这带来了两个重要的优势。
首先,名为 low high 的局部变量与工作空间中名为 low high 的任何全局变量
不同。因为它们是不同的,所以没有“碰撞”:局部变量的改变不会改变全局变量。
其次,当函数完成时,局部变量消失。这可以防止混乱并能够自动释放使用的空间。
15.5 在多种替代方案之间进行选择:
switch
15.5.1 问题
变量可以采用多个不同的值,需要程序根据取值分别处理每个替代方案。
15.5.2 解决方案
switch 函数将根据取值进行分支,以便选择处理每种情况的方式。
15.5.3 讨论
switch 函数的第一个参数是 R 要考虑的值。其余参数显示如何处理每个可能的值。例
简单编程
463
如,对 switch 的调用会考虑 who 的取值,然后返回三个可能的结果之一: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

Aurélien Géron
大规模数据分析和建模:基于 Spark 与 R

大规模数据分析和建模:基于 Spark 与 R

Javier Luraschi, Kevin Kuo, Edgar Ruiz
管理Kubernetes

管理Kubernetes

Brendan Burns, Craig Tracey

Publisher Resources

ISBN: 9787111656814