Вы можете использовать функцию sign() в базе R, чтобы вернуть знак каждого элемента в векторе.
Эта функция использует следующий базовый синтаксис:
sign(x)
куда:
- x: числовой вектор
Функция вернет:
- -1 : если значение отрицательное
- 0 : Если значение равно нулю
- 1 : Если значение положительное
В следующих примерах показано, как использовать функцию sign() в различных сценариях.
Пример 1: Использование sign() с вектором
В следующем коде показано, как использовать функцию sign() для отображения знака каждого значения в числовом векторе:
#define vector of values
x <- c(-3, 0, 3)
#return sign of each element in vector
sign(x)
[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
x y
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
x y
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:
Как использовать функцию dim() в R
Как использовать функцию transform() в R
Как использовать функцию развертки() в R