Как добавить строки в R DataFrame?

Опубликовано: 14 Сентября, 2022

В этой статье давайте обсудим, как добавлять строки в DataFrame на языке программирования R. Существуют различные способы добавления строк во фрейм данных R:

Способ 1: Использование rbind()

Строка может быть определена с помощью вектора значений и добавлена к фрейму данных с помощью метода rbind(), что по сути означает привязку строки. Этот метод можно использовать для объединения двух векторов, кадра данных и вектора, а также даже двух или более кадров данных. Чтобы сохранить изменения, выход должен быть назначен исходному или измененному фрейму данных. Количество рядов в этом случае увеличивается на один. Метод rbind() имеет следующий синтаксис:

Syntax: rbind(x,x1)

Arguments : x and x1 are the objects to combine 

Return: combined data frame formed from x and x1

Пример:

R




# declaring a data frame in R
data_frame = data.frame(C1 = c(1:4),
                        C2 = c(5:8),
                        C3 = c(9:12),
                        C4 = c(13:16))
  
print("Original data frame")
print(data_frame)
  
# defining new row data frame
new_row = c("New","Row","Added","Dataframe")
  
# bind a new row to the original data frame
data_frame <- rbind(data_frame,new_row)
print ("Modified Data Frame")
print(data_frame)

Выход:

[1] "Original data frame"
 C1 C2 C3 C4
1  1  5  9 13
2  2  6 10 14
3  3  7 11 15
4  4  8 12 16
[1] "Modified Data Frame"
  C1  C2    C3        C4
1   1   5     9        13
2   2   6    10        14
3   3   7    11        15
4   4   8    12        16
5 New Row Added Dataframe

Способ 2:

Мы можем вычислить количество строк во фрейме данных, а затем добавить новую строку по индексу (количество строк + 1). Новая строка может быть определена в виде вектора значений. Сделанная модификация сохраняется во фрейме данных. Временная сложность, связанная с этим методом, линейна в зависимости от размера строки. Следующий фрагмент кода указывает на использование этого метода:

R




# declaring a data frame in R
data_frame = data.frame(C1 = c(1:4),
                        C2 = c( 5:8), 
                        C3 = c(9:12),
                        C4 = c(13:16))
  
print("Original data frame")
print(data_frame)
  
# calculating number of rows in data frame
num_rows = nrow(data_frame)
  
# defining new row data frame
new_row = c("New","Row","Added","Dataframe")
  
# assigning the new row at a new
# index after the original number of rows 
data_frame[num_rows + 1,] = new_row
print ("Modified Data Frame")
print(data_frame)

Выход:

[1] "Original data frame"
 C1 C2 C3 C4
1  1  5  9 13
2  2  6 10 14
3  3  7 11 15
4  4  8 12 16
[1] "Modified Data Frame"
  C1  C2    C3        C4
1   1   5     9        13
2   2   6    10        14
3   3   7    11        15
4   4   8    12        16
5 New Row Added Dataframe