如何在 r 中使用 sign() 函数(3 个示例)


您可以使用基数 R 中的sign()函数返回向量每个元素的符号。

该函数使用以下基本语法:

 sign(s)

金子:

  • x:数值向量

该函数将返回:

  • -1 :如果值为负数
  • 0 :如果值为零
  • 1 :如果值为正

以下示例展示了如何在不同场景下使用sign()函数。

示例 1:将 sign() 与 Vector 一起使用

以下代码演示如何使用sign()函数显示数值向量中每个值的符号:

 #define vector of values
x <- c(-3, 0, 3)

#return sign of each element in vector
sign(s)

[1] -1 0 1

以下是如何解释结果:

  • 第一个值为-1 ,因为向量的第一个值为负。
  • 第二个值是0 ,因为向量的第二个值为零。
  • 第三个值为1 ,因为向量的第三个值为正。

示例 2:将 sign() 与数据框列一起使用

以下代码演示如何使用sign()函数显示数据框列中每个值的符号:

 #create data frame
df <- data. frame (x=c(0, 1.4, -1, 5, -4, 12),
                 y=c(3, 4, 3, 6, 10, 11))

#view data frame
df

     xy
1 0.0 3
2 1.4 4
3 -1.0 3
4 5.0 6
5 -4.0 10
6 12.0 11

#view sign of each value in column x
sign(df$x)

[1] 0 1 -1 1 -1 1

示例 3:使用 sign() 创建新的数据框列

假设我们在 R 中有以下数据框:

 #create data frame
df <- data. frame (x=c(0, 1.4, -1, 5, -4, 12),
                 y=c(3, 4, 3, 6, 10, 11))

#view data frame
df

     xy
1 0.0 3
2 1.4 4
3 -1.0 3
4 5.0 6
5 -4.0 10
6 12.0 11

下面的代码展示了如何使用sign()函数创建一个名为“z”的新列,其值取决于现有列“x”的值:

 #create new column 'z' based on sign of values in column 'x'
df$z <- with(df, ifelse(sign(x) == -1, ' negative ',
                   ifelse(sign(x) == 0, ' zero ', ' positive ')))

#view updated data frame
df

     X Y Z
1 0.0 3 zero
2 1.4 4 positive
3 -1.0 3 negative
4 5.0 6 positive
5 -4.0 10 negative
6 12.0 11 positive

请注意,“z”列中的值对应于“x”列中的值的符号。

其他资源

以下教程解释了如何使用 R 中的其他常用函数:

如何在 R 中使用 dim() 函数
如何在R中使用transform()函数
如何在 R 中使用 Sweep() 函数

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注