Як обчислити різницю між рядками в r
Ви можете використовувати функцію diff() , щоб обчислити різницю між рядками у кадрі даних у R:
#find difference between rows in every column of data frame
diff( as.matrix (df))
#find difference between rows of specific column
diff(df$column_name)
Наступні приклади показують, як використовувати цей синтаксис на практиці.
Приклад 1: Знайдіть різницю між рядками в кожному стовпчику
Наступний код показує, як обчислити різницю між рядками в кожному стовпці кадру даних:
#create data frame
df <- data. frame (day=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
sales=c(7, 8, 8, 12, 10, 9, 13, 16, 11, 7))
#view data frame
df
day sales
1 1 7
2 2 8
3 3 8
4 4 12
5 5 10
6 6 9
7 7 13
8 8 16
9 9 11
10 10 7
#calculate difference between rows for each column
diff( as.matrix (df))
day sales
[1,] 1 1
[2,] 1 0
[3,] 1 4
[4,] 1 -2
[5,] 1 -1
[6,] 1 4
[7,] 1 3
[8,] 1 -5
[9,] 1 -4
Приклад 2: Знайдіть різницю між рядками в певному стовпці
Наступний код показує, як обчислити різницю між рядками певного стовпця у кадрі даних:
#create data frame
df <- data. frame (day=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
sales=c(7, 8, 8, 12, 10, 9, 13, 16, 11, 7))
#calculate difference between rows in 'sales' column
diff(df$sales)
[1] 1 0 4 -2 -1 4 3 -5 -4
Приклад 3: Знайдіть різницю між рядками та додайте новий стовпець
Наступний код показує, як обчислити різницю між рядками в певному стовпці у кадрі даних, а потім додати ці відмінності як новий стовпець у кінці кадру даних:
#create data frame
df <- data. frame (day=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
sales=c(7, 8, 8, 12, 10, 9, 13, 16, 11, 7))
#calculate difference between rows in 'sales' column
sales_diff <- diff(df$sales)
#append NA to beginning of differences vector
sales_diff <- c(NA, sales_diff)
#append differences vector as new column
df$sales_diff <- sales_diff
#view updated data frame
df
day sales sales_diff
1 1 7 NA
2 2 8 1
3 3 8 0
4 4 12 4
5 5 10 -2
6 6 9 -1
7 7 13 4
8 8 16 3
9 9 11 -5
10 10 7 -4
Додаткові ресурси
Наступні навчальні посібники пояснюють, як виконувати інші функції загальної лінії в R:
Як використовувати функцію colSums() у R
Як використовувати функцію rowSums() у R
Як використовувати функцію nrow() у R