- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
你能帮我解释一下这段代码吗?我对 if_else 中的三个参数特别困惑:runif (n()) < 0.1、NA_character_、as.character(cut)。
diamonds %>%
mutate(cut = if_else(runif(n()) < 0.1, NA_character_, as.character(cut))) %>%
ggplot() +
geom_bar(mapping = aes(x = cut)).
来源:R 数据科学
最佳答案
我假设您了解 mutate
调用内容之外的所有内容。正如其他人在评论中建议的那样,您可以使用 ?function
语法找到这些函数的文档。
dplyr::mutate()
此处用于向钻石数据帧添加新列“cut”,该列将替换旧的“cut”列:
cut = ifelse(runif(n)) < 0.1, NA_character_, as.character(cut))
ifelse
是需要三个参数的函数:第一个是条件(“test”),第二个是条件为 true 时返回的值(“yes”),第三个是是条件为假(“否”)时返回的值。与标准“if 语句”相比,它的主要优点是它可以矢量化。例如:
ifelse(test = c(1,2,3) < 3, yes = "less than three", no = "more than two")
# [1] "less than three" "less than three" "more than two"
stats::runif()
是一个生成介于默认值 0 和 1 之间的随机数的函数。“runif”是“random Uniform (number)”的缩写。它的第一个参数“n”是要生成的数字的数量。例如:
## set random seed for reproducible results
set.seed(1)
## generate 5 random numbers
runif(5)
# [1] 0.2655087 0.3721239 0.5728534 0.9082078 0.2016819
dplyr::n()
是一个只能在调用 mutate()
、summarise()
和 过滤器()
。它返回当前组内的观察数。假设您的数据未分组,这将相当于 nrow(diamonds)
这并不明显,但是 R 中存在不同类型的 NA 值。NA 值通常会被强制转换为正确的类型,但在某些操作中(大概包括这个),有必要指定所需的 NA 类型。 NA_character_
仅表示缺少字符值。 R 中其他类似的保留名称包括 NA_integer_
和 NA_real_
。
钻石数据框中的“切工”数据是具有五个级别的有序因子。有序因子的值实际上是整数,每个整数都属于存储在因子的 levels 属性中的字符串。 as.character
是一个通用函数,这意味着它根据输入执行的操作略有不同。当 as.character
的输入是一个因子时,as.character
以字符向量的形式返回因子的级别。这听起来很复杂,但实际上非常直观:
my.factor <- factor(c("level 1", "level 2", "level 3", "level 2"))
## implicitly calling `print.factor`
my.factor
# [1] level 1 level 2 level 3 level 2
# Levels: level 1 level 2 level 3
## peeking under the hood
unclass(my.factor)
# [1] 1 2 3 2
# attr(,"levels")
# [1] "level 1" "level 2" "level 3"
## `as.character` returns the levels pertaining to each element
as.character(my.factor)
# [1] "level 1" "level 2" "level 3" "level 2"
对 ifelse
的调用实现了以下目的:
Generate a vector of random numbers between zero and one whose length is equivalent to the number of rows in the 'diamonds' dataframe. For each of these random numbers, do the following: If the random number is less than 0.1, return a missing character value (NA_character_). Otherwise, return the level-name of the corresponding element of
diamonds$cut
.
对 mutate 的调用只是用这个新的字符向量覆盖之前的 Diamonds$cut (在计算中使用)。
关于r - 在 if_else() 内部使用 runif() 意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71150807/
这是我的测试用例。 http://tobeythorn.com/isi/dummy2.svg http://tobeythorn.com/isi/isitest.html 如果我自己打开 svg,内部
这是我的测试用例。 http://tobeythorn.com/isi/dummy2.svg http://tobeythorn.com/isi/isitest.html 如果我自己打开 svg,内部
我正在尝试做类似的事情: SELECT SUM( CASE WHEN ( AND EXISTS(SELECT 1
我想问如何在外部 ng-repeat 内部正确使用内部 ng-repeat: 这意味着你想使用这样的东西: {{milestone.id}} {{
我希望在 wordpress 的仪表板内编辑 css 样式并且如果可能的话不必编辑 php 文件。 我知道至少可以编辑一些属性,所以我希望我可以直接在仪表板中编辑所有属性。 更具体地说如何更改自定义类
我在安装在 windows10 上的 vmware 中的 Ubuntu 上安装了伪分布式独立 hadoop 版本。 我从网上下载了一个文件,复制到ubuntu本地目录/lab/data 我在 ubun
我有一个如下所示的 WHERE 语句: WHERE ((@Value1 IS NULL AND [value1_id] IS NULL) OR [value1_id] = ISNULL(@Va
我有一个如下所示的 WHERE 语句: WHERE ((@Value1 IS NULL AND [value1_id] IS NULL) OR [value1_id] = ISNULL(@Va
在我的一些测试帮助程序代码中,我有一个名为 FakeDbSet(Of T) 的 IDbSet(Of T) 实现,它模拟了许多 EF 行为,但没有实际的数据库。我将类声明为 Friend ,因为我想强制
我正在寻找 Cassandra/CQL 的常见 SQL 习语 INSERT INTO ... SELECT ... FROM ... 的表亲。并且一直无法找到任何以编程方式或在 CQL 中执行此类操作
如何防止内部 while 循环无限运行?问题是,如果没有外部 while 循环,内部循环将毫无问题地运行。我知道它必须对外循环执行某些操作,但我无法弄清楚是什么导致了问题。 import java.u
我正在努力学习更多有关 C++ 的知识,但在国际象棋程序中遇到了一些代码,需要帮助才能理解。我有一个 union ,例如: union b_union { Bitboard b; st
这是我项目网页中的代码片段。这里我想显示用户选择的类别,然后想显示属于该类别的主题。在那里,用户可以拥有多个类别,这没有问题。我可以在第一个 while 循环中打印所有这些类别。问题是当我尝试打印主题
我想知道如何在 swing 中显示内部框架。这意味着,当需要 JFrame 时,通常我所做的是, new MyJFrame().setVisible(true); 假设之前的表单也应该显示。当显示这个
我最近发现了一些有趣的行为,这让我想知道对象如何知道存在哪些全局变量。例如,假设我有一个文件“test.py”: globalVar = 1 toDelete = 2 class Test(objec
我知道它已经在这里得到回答: google maps drag and drop objects into google maps from outside the Map ,但这并不完全是我所需要的
我目前正在学习Javascript DOM和innerHTML,发现在理解innerHTML方面存在一些问题。 这是我的代码:http://jsfiddle.net/hphchan/bfjx1w70/
我构建了一个布局如下的库: lib/ private_class_impl.cc private_class_decl.h public_class_impl.cc include/
我有一个使用 bootstrap 3 的组合 wordpress 网站。它基本上是一个图像网格。当屏幕展开时,它会从三列变为四列。移动时它是一列。 我想出了如何调整图像的顶部和底部边距,但我希望图像的
我正在试用 MSP-EXP430G2 的教程程序,使用 Code Composer Studio 使 LED 闪烁。最初,它有一个闪烁的无限循环: for(;;) // This emp
我是一名优秀的程序员,十分优秀!