Unnest()R不适用于大数据样本

Unnest()R不适用于大数据样本,r,list,tidyr,unnest,R,List,Tidyr,Unnest,我正在从JSON文件中卸载数据。当我制作一个小样本时,unnest()函数可以工作,但是当我尝试在大型原始数据帧上运行它时,我得到下面的错误 `Error in bind_rows_(x, .id) : Column lines can't be converted from integer to list` 下面是我的代码。我们从GitHub的API获取JSON数据 `repo_data <- fromJSON("data/data/repos.json")` `repo_da

我正在从JSON文件中卸载数据。当我制作一个小样本时,unnest()函数可以工作,但是当我尝试在大型原始数据帧上运行它时,我得到下面的错误

`Error in bind_rows_(x, .id) : 
  Column lines can't be converted from integer to list`
下面是我的代码。我们从GitHub的API获取JSON数据

`repo_data <- fromJSON("data/data/repos.json")`

`repo_data来自
unnest()

unnest()可以处理可以包含原子向量、列表或数据帧(但不能混合使用不同类型)的列表列

列表中有两种不同的原子类型。我不知道这是否是您的数据结构,没有评论中要求的可复制示例,但这说明了
unnest()


DF请提供该数据库的一个示例(用于测试)。可以找到一些方法
unnest(testdf)
运行时会出现警告。你能提供一个重现你的错误的例子吗?请阅读我们都链接到的帖子:)我试过了,但数据框的形状不正确。警告与错误消息相同。如果我不绑定任何东西,除非unnest是,那么这条消息意味着什么?我感谢您的帮助,但我决定看看是否可以手工编写一个函数,因为unnest()似乎在处理小样本,但在使用大型原始数据集时似乎会出现此错误。是的,我阅读了文档。但是unnest仍然有效,尽管有警告。通过运行示例数据帧,我得到了这个警告,但它能够成功地取消测试<代码>在绑定行中(x,.id):绑定字符和因子向量,强制为字符向量
`repo_small <- head(repo_data, 100)`
`df_repo <- repo_small %>% select(ownerName, name, languages, ownerType) %>% unnest()`
`owner <- c("github", "palentir", "apple")
gitcode <- data.frame(name = c("java"), lines=c(81))
palentircode <- data.frame(name= c("java", "python", "R"), lines=c(200, 45,903))
applecode <- data.frame(name=c("java", "ruby"), lines=c(12, 120))
langauge <- list(gitcode, palentircode, applecode)
testdf <- data.frame(owner)
testdf$language <- langauge`
DF <- data.frame(a = 1:2)
DF$name <- list(c("Java", "Python", "Ruby"), c(104L, 109432L, 10L))
unnest(DF, name)
# will fail because of the requirements of unnest
D$name[[2]] <- as.character(DF$name[[2]])
unnest(DF, name)
#   a   name
# 1 1   Java
# 2 1 Python
# 3 1   Ruby
# 4 2    104
# 5 2 109432
# 6 2     10