pyspark игнорирует строку, если тип столбца имеет некоторый шаблон регулярного выражения - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть файл данных в формате json, одно из его полей существует в виде строки, а также типа структуры

когда это строка

"class":{"student":"{\"one\":\"one\"}"}

когда это структура

    "class": {
        "student": {
            "name": ["aaa"],
            "subject": ["a", "b"],
            "regular": true
        }
    }

Теперь я хочу удалить строку, если значение имеет тип string.

В частности, я хочу удалить, если значения имеют символ «\», и ​​преобразовать другие строки в тип структуры json. так что я могу получить доступ к определенному значению как "class.student.name"

1 Ответ

0 голосов
/ 10 сентября 2018

Если ваш фрейм данных называется df, а ваш столбец col, это отфильтровывает ненужные вам строки:

df = df.where('cast(col as string) not rlike "\"')
...