R 如何将用户输入的列添加到现有数据框中?

R 如何将用户输入的列添加到现有数据框中?,r,dataframe,input,R,Dataframe,Input,我正在努力从用户那里获取输入并将其存储为向量,然后将其作为新列添加到现有数据帧中 df <- data.frame(aa1 = c("S", "K", "A", "A", "L", "D", "L", "E", "E", "H", "T", "D", &

我正在努力从用户那里获取输入并将其存储为向量,然后将其作为新列添加到现有数据帧中

df <- data.frame(aa1 = c("S", "K", "A", "A", "L", "D", "L", "E", "E", "H", "T", "D", "V", "V", "Q", "K", "K", "N", "A", "I", "E", "I", "V", "T", "L"),
                      aa2 = c("C","V","Q","W","K","N","A","Y","A","L","C","W","L","D","C","I","L","S","A","L","V","H","S","E","E")) 

read_aa <- function() {
  my_seq <- readline(prompt="Enter aa: ")
  aa3 <- strsplit(my_seq, "") #splitting aa into separate string
  df1 <- df
  df1 <- cbind(new_col = aa3, df) 
}
print(read_aa())

df您只需将其作为向量从列表中删除即可


aa3我可以在控制台面板中看到输出,但它没有保存到df中。对不起,我是R的新手。这怎么解决呢?
print
只记录它,不存储它。我添加了一个编辑来显示如何存储它。您需要将其分配回一个变量。如果您多次运行
read_aa
,最好将df作为输入。我要做一个心电图
out <- read_aa()
print(out)
read_aa <- function(input) {
  my_seq <- readline(prompt="Enter aa: ")
  testthat::expect_true(nchar(my_seq) == 25)
  aa3 <- strsplit(my_seq, "")[[1]] #splitting aa into separate string
  output <- cbind(new_col = aa3, input) 
  return(output)
}
out <- read_aa(input = df)
print(out)