Как разбить элементы серии pandas и поместить их в формат JSON?

У меня есть объект серии pandas S, некоторые элементы являются парами имен и значений, например a-12 b-23 c-42 d-25 …

некоторые просто abcd ….

  • Создание объекта JSON, сериализуемого с помощью обычного кодировщика
  • Python: попытка десериализации нескольких объектов JSON в файле с каждым объектом, охватывающим несколько, но последовательно расположенных строк
  • Python читает JSON-файл и модифицирует
  • Простое кодирование JSON с помощью Python
  • Дисплей с флягой Json на аккуратном пути
  • Как я могу перебирать записи в JSON?
  • и так далее, мне нужно сделать это, чтобы получить это в формате Json, например:

    {Name:a,Value:12} {Name:b,Value:23} {Name:c,Value:42} {Name:d,Value:25} ... 

    Если только a, b, c, d, а не пары, значения – NaN.

    Я использовал функцию str.split ("-"), чтобы отделить пары, а для non pairs это создало бы NaN для части значения.

    Интересно, могу ли я соединить их, как

     result=[{"Name": S.str.split("-").str.get(0),"Value": S.str.split("-").str.get(1)}] 

    ?

  • Создание сложных вложенных словарей из Pandas DataFrame
  • Как удалить несколько фреймов pandas (python) из памяти, чтобы сохранить RAM?
  • Векторная формула Хаверсина с рамкой данных панд
  • Django JSONField внутри ArrayField
  • Список параметров pandas для метода set_option
  • Объединение фреймов данных на основе диапазона дат
  • One Solution collect form web for “Как разбить элементы серии pandas и поместить их в формат JSON?”

    Да, я думаю, вы довольно близки, вы могли бы написать это как понимание списка, например

     result = [{"Name": n, "Value": v} for n, v in zip(S.str.split("-").str.get(0), S.str.split("-").str.get(1))] 

    Хотя было бы немного лучше использовать регулярное выражение для синтаксического анализа строки:

     result = [{"Name": n, "Value": v} for n, v in S.str.extract("(\w)-?(\d+)?").values] 
    Python - лучший язык программирования в мире.