试图在r中循环来自JSON的数据

时间:2017-03-14 22:44:02

标签: r

我正在尝试从我使用以下代码提取的JSON中提取数据:

             Player_name_1   Player_name_2   ...   Player_name_n
Gameweek_1
Gameweek_2
...
Gameweek_m

在语言中,我正在尝试使用此代码,通过数据循环五次创建一个向量。

希望这听起来很清楚, OilFerry

编辑:

先谢谢你的帮助。我认为最好建立我之前的问题,而不是开始一个新的线程。

我想要实现的是在幻想英超联赛中获取每个游戏周的每个玩家的总积分数据,并使用数据框或矩阵以下列方式构建它:

##loading the jsonlite package
library(jsonlite)  

##Fetshing points per player for Gameweek 1 and 2
Data_GW_1 <- fromJSON("https://fantasy.premierleague.com/drf/event/1/live")
points_GW1 <- sapply(Data_GW_1$elements, function(x) x$stats$total_points, USE.NAMES = FALSE)

Data_GW_2 <- fromJSON("https://fantasy.premierleague.com/drf/event/2/live")
points_GW2 <- sapply(Data_GW_2$elements, function(x) x$stats$total_points, USE.NAMES = FALSE)

##Creating names before joining data
GW1_names <- "Gameweek 1"
GW2_names <- "Gameweek 2"

##Creating a dataframe from the data with names
df <- data.frame(points_GW1,points_GW2)
names(df) <- c(GW1_names, GW2_names)
print(df)

##Getting the following error message
Error in data.frame(points_GW1, points_GW2) : 
  arguments imply differing number of rows: 524, 537
> names(df) <- c(GW1_names, GW2_names)
Error in names(df) <- c(GW1_names, GW2_names) : 
  names() applied to a non-vector
> print(df)
function (x, df1, df2, ncp, log = FALSE) 
{
  if (missing(ncp)) 
    .Call(C_df, x, df1, df2, log)
  else .Call(C_dnf, x, df1, df2, ncp, log)
}
<bytecode: 0x000000000428a038>
  <environment: namespace:stats>

我正在使用以下数据源: https://fantasy.premierleague.com/drf/event/[Gameweek]/live 每个游戏周的每位玩家积分 https://fantasy.premierleague.com/drf/bootstrap-static 每个玩家的身份和号码

我一直在使用以下代码为游戏周1和2的每位玩家获取积分,但不明白为什么项目数量存在差异 - &gt; Gameweek1有524,Gameweek有537。

我还试图围绕如何将来自引导静态数据源的播放器的id和/或名称与来自事件数据源的数据相结合来创建上面演示的数据帧或矩阵。

$

希望这有道理:)

0 个答案:

没有答案