I have R dataframe which has one column delivery_by_region
which is a JSON string which when parsed returns a multiple row dataframe. I want to create a new dataframe which has all the rows from parsed dataframe of each row and also keep some of the orignal columns like spend and impressions. Here’s my code:
<code>demodf <- mergedf |>
mutate(delivery_by_region = sapply(delivery_by_region, remove_non_us)) |>
mutate(delivery_by_region = gsub("'", '"', delivery_by_region)) |>
rowwise() |>
do(data.frame(fromJSON(.$delivery_by_region, flatten = T), .$id, .$spend, .$impressions))
</code>
<code>demodf <- mergedf |>
mutate(delivery_by_region = sapply(delivery_by_region, remove_non_us)) |>
mutate(delivery_by_region = gsub("'", '"', delivery_by_region)) |>
rowwise() |>
do(data.frame(fromJSON(.$delivery_by_region, flatten = T), .$id, .$spend, .$impressions))
</code>
demodf <- mergedf |>
mutate(delivery_by_region = sapply(delivery_by_region, remove_non_us)) |>
mutate(delivery_by_region = gsub("'", '"', delivery_by_region)) |>
rowwise() |>
do(data.frame(fromJSON(.$delivery_by_region, flatten = T), .$id, .$spend, .$impressions))
But I’m getting this error:
<code>Error in data.frame(fromJSON(.$delivery_by_region, flatten = T), .$id, :
arguments imply differing number of rows: 0, 1
</code>
<code>Error in data.frame(fromJSON(.$delivery_by_region, flatten = T), .$id, :
arguments imply differing number of rows: 0, 1
</code>
Error in data.frame(fromJSON(.$delivery_by_region, flatten = T), .$id, :
arguments imply differing number of rows: 0, 1
How can I fix this?
1