“的后续行动”;使用R";从API中提取数据;

“的后续行动”;使用R";从API中提取数据;,r,json,list,dataframe,extraction,R,Json,List,Dataframe,Extraction,我的代码(来自这里)给出了一个非常复杂的输出。除了嵌套在列表中的data.frame之外,我几乎可以提取所有需要的内容 如果不采取任何措施,它会给我以下错误: .rowNamesDF中出现错误您需要单独处理intresent,从中提取所需内容,然后将其分配给新列,只需确保每行都有一个简单的数据结构即可 如果效果更好,还可以将名称粘贴在一起,例如用“-”分隔,然后intresent将是一个简单的字符向量 df <- my_dfs1 %>% lapply(function(df_0){

我的代码(来自这里)给出了一个非常复杂的输出。除了嵌套在列表中的data.frame之外,我几乎可以提取所有需要的内容

如果不采取任何措施,它会给我以下错误:


.rowNamesDF中出现错误您需要单独处理
intresent
,从中提取所需内容,然后将其分配给新列,只需确保每行都有一个简单的数据结构即可

如果效果更好,还可以将名称粘贴在一起,例如用“-”分隔,然后
intresent
将是一个简单的字符向量

df <- my_dfs1 %>% lapply(function(df_0){
  #choose the columns you want
  return_df <- df_0[c(12:14, 18)]
  # work on intressent
  return_df$namn <- df_0$dokintressent$intressent %>% 
    lapply(function(x)list(x$namn)) %>% 
    do.call(rbind, .)                    # careful here a simple unlist won't work
  return(return_df) }) %>% 
  do.call(rbind, .)
df%lappy(函数(df_0){
#选择所需的列
回报率_df%
打电话给(rbind)#注意这里简单的非列表不起作用
返回(返回_df)})%>%
打电话(rbind,)

您需要自己处理
intresent
,从中提取您需要的内容,然后将其分配给一个新列,只需确保每行都有一个简单的数据结构即可

如果效果更好,还可以将名称粘贴在一起,例如用“-”分隔,然后
intresent
将是一个简单的字符向量

df <- my_dfs1 %>% lapply(function(df_0){
  #choose the columns you want
  return_df <- df_0[c(12:14, 18)]
  # work on intressent
  return_df$namn <- df_0$dokintressent$intressent %>% 
    lapply(function(x)list(x$namn)) %>% 
    do.call(rbind, .)                    # careful here a simple unlist won't work
  return(return_df) }) %>% 
  do.call(rbind, .)
df%lappy(函数(df_0){
#选择所需的列
回报率_df%
打电话给(rbind)#注意这里简单的非列表不起作用
返回(返回_df)})%>%
打电话(rbind,)

问题在于,只有您可以决定数据应该如何表示,或者更确切地说,您希望如何表示
INTRESENT
每行有一个数据帧,该数据帧如何与原始数据帧相匹配(也称为上述代码中的df_0
)?你如何想象你想要得到的最终结果?例如,您想为
intress
中的行重复
df_0[c(12:14,18])
中的每一行吗?我要编辑这个问题,因为我已经实现了每行数据帧的问题。我真正需要的是“namn”,如果它能以列的形式出现,每个单元格都反映一个名称列表,那就太好了。我需要所有这些都成为一个单独的数据库,以便以后使用。非常感谢你这么做。我肯定是咬得太多了。问题是只有你能决定数据应该如何表示,或者更确切地说,你想如何表示
INTRESENT
每行有一个数据帧,该数据帧如何与原始数据帧相匹配(也称为上述代码中的df_0)?你如何想象你想要得到的最终结果?例如,您想为
intress
中的行重复
df_0[c(12:14,18])
中的每一行吗?我要编辑这个问题,因为我已经实现了每行数据帧的问题。我真正需要的是“namn”,如果它能以列的形式出现,每个单元格都反映一个名称列表,那就太好了。我需要所有这些都成为一个单独的数据库,以便以后使用。非常感谢你这么做。我肯定是吃得太多了,我想应该自己做,但我不知道从哪里开始。很抱歉问你,因为我相信你已经考虑过了,但最终他们会被分配回正确的案例吗?谁与谁一起工作是我的主要假设之一。我运行了几次,它以列表的形式返回,使用了所有可能的列-也许我遗漏了一些东西我不确定你的意思,例如,如果运行
df$namn[1]>%str()
,你会得到什么?我不知道我以前没有错什么,但现在它正在工作。它不是以数据帧的形式出现,而是一个大型矩阵。我很抱歉一直打扰你,如果你允许的话,我很乐意给你适当的信任(除了在致谢时用你的手柄感谢你之外)。那太好了!这一点也不麻烦,我很高兴能帮上忙。我想了想——它应该自己工作——但我不知道从哪里开始。很抱歉问你,因为我相信你已经考虑过了,但最终他们会被分配回正确的案例吗?谁与谁一起工作是我的主要假设之一。我运行了几次,它以列表的形式返回,使用了所有可能的列-也许我遗漏了一些东西我不确定你的意思,例如,如果运行
df$namn[1]>%str()
,你会得到什么?我不知道我以前没有错什么,但现在它正在工作。它不是以数据帧的形式出现,而是一个大型矩阵。我很抱歉一直打扰你,如果你允许的话,我很乐意给你适当的信任(除了在致谢时用你的手柄感谢你之外)。那太好了!一点也不麻烦,我很乐意帮忙
df <- my_dfs1 %>% lapply(function(df_0){
  #choose the columns you want
  return_df <- df_0[c(12:14, 18)]
  # work on intressent
  return_df$namn <- df_0$dokintressent$intressent %>% 
    lapply(function(x)list(x$namn)) %>% 
    do.call(rbind, .)                    # careful here a simple unlist won't work
  return(return_df) }) %>% 
  do.call(rbind, .)