pyspark читает json, который имеет то же поле, что и строка, и правильную структуру json и значение parse - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть JSON, как показано ниже

{
"student": {
            "names": ["aaaa","bbbb"],
            "section": ["one", "two"],
            "running": true
    },

    "code": "001"
}

{
    "student": "{\"name\":\"aaaa\"}",
    "code": "002"
}

{
    "student": "aaaaaaaaaaa",
    "code": "003"
}

Я прочитал, используя строку ниже

df = sqlContext.read.json ("file: ////home/test/data/info.txt")

когда я печатал схему, она показала, как показано ниже

root
|-- code: string (nullable = true)
|-- student: string (nullable = true)

это напечатало студента как строку, но я хочу, чтобы поле студента как структура json

Как преобразовать это поле студента в структуру json, я в порядке, даже если значения ниже будут отброшены
"студент": "{\" имя \ ": \" аааа \ "}" и "студент": "ааааааааааа"

Я не могу назначить схему во время чтения json, так как я не знаю номер поля в студенческих полях.

...