Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 当我使用数据框列的输入创建新列时,为什么API调用函数失败?_R_Api_Dataframe - Fatal编程技术网

R 当我使用数据框列的输入创建新列时,为什么API调用函数失败?

R 当我使用数据框列的输入创建新列时,为什么API调用函数失败?,r,api,dataframe,R,Api,Dataframe,我的数据框架有一组API查询,每列是一个搜索词,然后行是时间段。例如,我可能有A列和B列,它们分别有搜索词“aaa”和“bbb”。然后,第1行是API调用,用于搜索2014-2015年期间的aaa或bbb(取决于列),第2行将与2013-2014年相同,以此类推 现在,我想为每个文本/url/api调用列生成一个数字列,返回从该特定api调用获得的点击数。基本上,现在我已经完成了api调用的网格,并将其转换为数据框,我想扩展数据框,以记录每个查询的命中率,并将这些命中率存储在具有相关列名的列中

我的数据框架有一组API查询,每列是一个搜索词,然后行是时间段。例如,我可能有A列和B列,它们分别有搜索词“aaa”和“bbb”。然后,第1行是API调用,用于搜索2014-2015年期间的aaa或bbb(取决于列),第2行将与2013-2014年相同,以此类推

现在,我想为每个文本/url/api调用列生成一个数字列,返回从该特定api调用获得的点击数。基本上,现在我已经完成了api调用的网格,并将其转换为数据框,我想扩展数据框,以记录每个查询的命中率,并将这些命中率存储在具有相关列名的列中

我尝试了以下方法:

df$sheSearch = getData(df$`she `)
希望我能像往常一样通过对现有列应用函数来创建一个新列。但是,这会生成一个看似无关的错误,但只有在我尝试调用数据帧元素的函数时才会发生:

Error in file(con, "r") : invalid 'description' argument
但是,如果我首先将df的单个元素分配给一个变量,然后调用,则没有错误:

 f = df$`she `[1]
> getData(f)
[1] 30864
为什么会发生这种情况,解决办法是什么

下面是getData函数(我从Rolf Fredheim的教程中稍微修改了它)


getData,因为“df$
和他的女儿
”属于
因子类。您可以将系数转换为字符。您的数据是
系数
打印。默认情况下,系数
显示列的可能
级别
或类别,如
系数(1:3)[1]
。您可以使用
df$var@latemail您的修复是正确的,但是我的getData错误仍然存在-特别是当我尝试读取URL时,我遇到了这个错误:df$sheSearch=getData(df$she)error in file(con,“r”):无效的'description'参数尝试使用
getData(df[[“she”]])
。是否要使用vector调用getData?
getData <- function(url){
  raw.data <- readLines(url, warn="F") 
  rd  <- fromJSON(raw.data)
  Sys.sleep(.2)
  rd[[1]]$meta$hits
}