【问题标题】:Assigning a list to cells in data frame (r studio)将列表分配给数据框中的单元格(r studio)
【发布时间】:2016-06-29 23:41:18
【问题描述】:

我有一个包含两列的数据框,我正在尝试将列表对象逐行分配给两个单元格(每列一个):

Type_I_Error<-c()
Type_II_Error<-c()
new_frame<-data.frame("Type_I_Error", "Type_II_Error")
new_frame <- data.frame(Type_I_Error=character(),
             Type_II_Error=character(), 
             stringsAsFactors=FALSE) 

type1errorlist <- list(character(0))
type1errorlist[[1]][length(type1errorlist[[1]]) + 1] <- "type1errors:"
type1errorlist[[1]][length(type1errorlist[[1]]) + 1] <- "2002_9"

type2errorlist <- list(character(0))
type2errorlist[[1]][length(type2errorlist[[1]]) + 1] <- "type2errors:"
type2errorlist[[1]][length(type2errorlist[[1]]) + 1] <- "2001_9"

a<-as.character(type1errorlist)
b<-as.character(type2errorlist)
new_frame <- rbind(new, c(a, b))

我收到以下错误: rbind2(..1, r) 中的错误: 无法将类型“闭包”强制为“列表”类型的向量

我该如何解决这个问题?

【问题讨论】:

  • 请提供代码和示例数据。
  • 我为 type2errorlist 变量添加了更多示例数据。我只发布了这部分代码,因为我已经检查了函数中的所有其他行并且它们工作正常。
  • ... 这意味着您没有为reproducible example 发布足够的信息。尤其是对于像 R 这样的语言,当您寻求帮助时,您确实必须提供 (a) 自包含代码,这样我们就不会想知道变量是什么样子或函数做什么; (b) 数据,以便我们可以测试此代码;以及这两者,以便 (c) 我们知道您到目前为止所做的尝试。我不是刻薄或需要帮助,我是在解释为什么自愿抽出时间的人选择搁置你的问题:我们没有时间这样猜测。
  • 好的,很抱歉。我粘贴了所有代码并澄清了我的问题,所以现在可以重现了。

标签: r list cells


【解决方案1】:

我不太确定这里发生了什么。或者你为什么打电话:a&lt;-as.character(type1errorlist) 但如果你只是想简单地制作一个数据框,你可以将列表附加在一起然后 rbind 它:

do.call(rbind, append(type1errorlist, type2errorlist))

在本例中生成一个 2x2 数据帧。

【讨论】:

  • 我试图将一个列表放入一个单元格中(所以我试图用两列填充一个数据框,一列用于 type1errorlist,另一列用于 type2errorlist)。我尝试做 new_frame
  • 您想将整个 2x2 打包成一个单元格吗?或者您正在尝试将行打包到一个单元格并拥有一个一维数据框?
  • 我的数据框有两列,我试图在每个单独的单元格中填充一个列表(逐行执行此操作,以便每一列都有一个条目)。我正在尝试将名为“type1errorlist”的整个列表放入名为 Type_I_Error 的列下的一个单元格中,并将名为“type2errorlist”的整个列表放入 Type_II_Error 列下的一个单元格中
  • 我基本上不确定为什么使用 rbind 将列表放入单元格中不起作用。我还尝试将单个单元格设置为列表(例如上面代码中的那个),但这也不起作用。对此的任何帮助将不胜感激。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-06
  • 2020-09-30
  • 1970-01-01
  • 2020-06-09
  • 2021-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多