303 次查看
假设我们有一个包含从 1 到 100 的一百个值的向量,我们想将大于 5 小于 96 的值设置为 5,这可以使用 ifelse 函数实现。例如,如果这样的向量命名为 x,则命令如下:ifelse(x>5 & x <96, 5, x) 。示例 1 实时演示 > x1 <- c(2, 4, 1, 6, 7, 4, 0, 1, 6, 4, 0, 7, 1, 3, 3, 1, 4, 6, 7, 7, 0, 2, 7, 3, 9, 4, 4, 8, 6, 3, 3, 5, 4, 5, 6, 5, 6) > x1Output[1] 2 4 1 5 5 4 0 1 5 4 0 5 1 3 3 1 4 5 5 5 0 2 5 3 9 4 4 5 5 3 3 5 4 5 5 5 5 [38] 2 ... 阅读更多
2K+ 次查看
我们知道正值大于 0,因此,我们可以将此条件与 length 函数一起使用来查找向量中正值的个数。例如,如果我们有一个包含一些正值和一些负值的向量 x,我们想找到正值的个数,那么我们可以使用命令 length(x[x>0])。示例 1 实时演示 > x1 <- rnorm(30) > x1Output[1] 0.21314126 1.23449384 -1.02721325 -0.23168203 -1.36368881 -0.82416287 [7] 0.31224895 -0.90773340 0.10312288 -0.38914253 0.01196499 0.44875369 [13] 0.40820219 0.70172242 -0.23766272 -0.01023414 1.12403398 0.05837136 [19] -0.67403563 -0.26134292 0.31192384 -1.25116951 0.22115555 0.46544495 [25] 0.76567139 0.76948285 -1.42650924 0.24616899 0.18043015 1.04896235 ... 阅读更多
要检查 R 中向量中的所有值是否都是整数,我们可以使用 floor 函数对向量进行取整,然后从中减去向量值,并检查输出是否为零。如果输出为零,则表示该值为整数,否则不是整数。floor 函数返回小于或等于实际值的最大的整数。例如,如果我们有一个向量 x,则可以这样操作:x-floor(x)==0。示例 1 实时演示 > x1 <- c(4, 0, 2, 8, 6, 1, 3, 7, 3, 4, 0, 7) > x1Output[1] 4 0 2 8 6 1 3 7 3 4 0 7 ... 阅读更多
1K+ 次查看
要将矩阵转换为具有列名和行名作为变量的数据框,我们首先需要将矩阵转换为表格,然后使用 as.data.frame 读取它作为数据框。例如,如果我们有一个矩阵 M,则可以使用以下命令:as.data.frame(as.table(M))。示例 1 实时演示 > M1 <- matrix(1:36, nrow = 6, ncol = 6) > M1Output[, 1] [, 2] [, 3] [, 4] [, 5] [, 6] [1, ] 1 7 13 19 25 31 [2, ] 2 8 14 20 26 32 [3, ] 3 9 15 21 27 33 [4, ] 4 10 16 22 28 34 ... 阅读更多
要创建一个具有固定行数但没有列的空数据框,我们可以使用 data.frame 函数和 matrix 函数。这意味着我们需要使用 matrix 创建一个没有列的矩阵,并使用 data.frame 函数将其保存在数据框中,如下例所示。示例 1 实时演示 > df1 <- data.frame(matrix(nrow = 10, ncol = 0)) > df1Outputdata frame with 0 columns and 10 rows 示例 2 实时演示 > df2 <- data.frame(matrix(nrow = 100, ncol = 0)) > df2Outputdata frame with 0 columns and 100 rows 示例 3 实时演示 > df3 <- data.frame(matrix(nrow = 39, ncol = 0)) > df3Outputdata frame with 0 columns and 39 rows 示例 4 实时演示 > df4 <- data.frame(matrix(nrow = 20, ncol = 0)) > df4Outputdata frame with 0 columns and 20 rows 示例 5 实时演示 > df5 <- data.frame(matrix(nrow = 2, ncol = 0)) > df5Outputdata ... 阅读更多
给定一个整数作为输入。目标是找到为该数计算的阶乘中尾随零的个数。一个数 N 的阶乘是范围 [1, N] 中所有数的乘积。我们知道,只有当数字是 10 的倍数或具有因子对 (2, 5) 时,我们才会得到尾随零。在任何大于 5 的数的阶乘中,在该数的质因数分解中,2 的个数都多于 5 的个数。用 5 的幂除以一个数将给我们 5 的个数…… 阅读更多
167 次查看
给定两个表示范围的数字 start 和 end。目标是找到 [start, end] 之间存在的一元数的个数。我们可以通过以下步骤检查数字是否为一元数:如果我们取数字 13,则 12 + 32 = 10,然后 12 + 02 = 1,因此最终的和为 1,所以 13 是一元数。例如,输入 start=1 end=20 输出 范围内一元数的个数是:5 说明 数字是:1、7、10、12 和 13 输入 start=50 end=100 输出 范围内一元数的个数是:7 说明 数字是 - 59、63、67…… 阅读更多
135 次查看
给定一个数字 N 作为输入。对 N 执行两个操作,并识别在此过程中生成的唯一数字的个数。步骤将 - 将数字加 1 从生成的数字中去除尾随零(如果有)如果 N 是 8,则生成的数字将是 应用步骤 1 - 8 → 9 → 应用步骤 2 - 1 →(从 10 中删除 0)应用步骤 1:2 → 3 → 4 → 5 → 6 → 7 → 8(相同的序列)唯一数字的个数将为 9。例如,输入 N=21 输出 从 N 加一…… 阅读更多
208 次查看
给定一个包含整数值的排序双向链表。目标是找到乘积等于给定值 x 的三元组。如果输入链表是 3-4-1-2 且 x 是 6,则计数将为 1(三元组 (3, 1, 2))例如,输入 链表:[3-4-13-5-10-10-0] x=20 输出 排序双向链表中乘积等于给定值 x 的三元组的个数是:2 说明 三元组将是:(3, 4, 13) 和 (10, 10, 0) 输入 链表:[4-3-1-5-2-4-2] x=8 输出 排序双向链表中乘积等于…… 阅读更多
172 次查看
给定一个包含整数值的排序双向链表。目标是找到乘积等于给定值 x 的三元组。如果输入链表是 3-4-1-2 且 x 是 6,则计数将为 1(三元组 (3, 1, 2))例如,输入 链表:[200-4-16-5-10-10-2] x=200 输出 排序双向链表中乘积等于给定值 x 的三元组的个数是:3 说明 三元组将是:(4, 5, 10)、(4, 5, 10) 和 (10, 10, 2) 输入 链表:[4-3-1-5-2-4-2] x=12 输出 排序双向链表中乘积等于给定值…… 阅读更多