У меня есть JSon файл, строки в формате следующим образом:формат JSON для преобразования формата CSV, особый случай
{"checkin_info": {"11-3": 17, "8-5": 1, "15-0": 2, "15-3": 2, "15-5": 2, "14-4": 1, "14- 5": 3, "14-6": 6, "14-0": 2, "14-1": 2, "14-3": 2, "0-5": 1, "1-6": 1, "11-5": 3, "11-4": 11, "13-1": 1, "11-6": 6, "11-1": 18, "13-6": 5, "13-5": 4, "11-2": 9, "12-6": 5, "12-4": 8, "12-5": 5, "12-2": 12, "12-3": 19, "12-0": 20, "12-1": 14, "13-3": 1, "9-5": 2, "9-4": 1, "13-2": 6, "20-1": 1, "9-6": 4, "16-3": 1, "16-1": 1, "16-5": 1, "10-0": 3, "10-1": 4, "10-2": 4, "10-3": 4, "10-4": 1, "10-5": 2, "10-6": 2, "11-0": 3}, "type": "checkin", "business_id": "KO9CpaSPOoqm0iCWm5scmg"}
и так далее .... он имеет 8282 записи, как это.
Я хочу преобразовать его в файл csv следующим образом.
business_id "0-0" "1-0" "2-0" "3-0" ….. "23-0" "0-1" ……. "23-1" …….. "0-4" …… "23-4" …… "23-6"
1 KO9CpaSPOoqm0iCWm5scmg 2 1 0 1 NA 1 1 NA NA NA NA NA 6 NA 7
2 oRqBAYtcBYZHXA7G8FlPaA 1 2 2 NA NA 2 NA NA 1 NA 2 NA 2 NA 2
Я попробовал этот код:
urlc <- "C:\\Users\\Ayush\\Desktop\\yelp_training_set\\yelp_training_set_checkin.json"
conc = file(urlc, "r")
inputc <- readLines(conc, -1L)
usec <- lapply(X=inputc,fromJSON)
for (i in 1:8282)
{
tt<-usec[[i]]$checkin_info
bb<-toString(tt)
usec[[i]]$checkin_info<-bb
}
dfc <- data.frame(matrix(unlist(usec), nrow=length(usec), byrow=T))
write.csv(dfc,file="checkin_tr.csv")
, чтобы преобразовать его в форму, как это:
X1
business_id
1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 2, 1
D0IB17N66FiyYDCzTlAI4A
1, 1, 2, 1, 1
HLQGo3EaYVvAv22bONGkIw
1, 1, 1, 1
J6OojF0R_1OuwNlrZI-ynQ 2, 1, 2, 1, 2, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 2, 1, 2
Но я хочу записи в колонке "X1" выше в отдельных столбцах, как показано на рисунке в первой таблице.
Как я могу это сделать? Пожалуйста, помогите
Попробуй, и сообщит, если это сработает. Большое спасибо. –
Здесь 'tt' представляет только одну строку моего json-файла. Мой файл имеет 8282 строк. Можете ли вы изменить свой код и написать его с помощью «url», как я это сделал. В противном случае я смущаюсь. Не удалось получить доступ только к одной строке. Я попробовал это. URLC <- "C: \\ Users \\ Аюш \\ \\ yelp_training_set для рабочего \\ yelp_training_set_checkin.json" конц = файл (URLC, "г") inputc <- readLines (конц, -1L) тт <- lapply (X = inputc, fromJSON) data.frame (business_id = тт $ business_id, do.call (rbind, список (тт $ checkin_info))) , но этот кадр данных NULL. –
@ user2474387 Я редактирую свой ответ с помощью нового решения. – agstudy