Цикл Python по файлам .dat для структурирования неструктурированных данных

Я пытаюсь читать файлы .dat через каталог, в котором приведенный ниже код работает правильно при работе со структурированными данными (например, с текстом с разделителями и / или csv). Я пытаюсь прочитать 3 файла данных в пандах и добавить их вместе и извлечь имя файла, чтобы добавить его в последний столбец фрейма данных.

Здесь находится фрагмент .dat, это просто пример, который я придумал, чтобы показать данные (первые несколько строк - мусор, который я хочу пропустить:

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{"Basketball_Player_Name" : "Michael Jordan", "Bulls" : {"school" :[ { 'North Carolina' : {"id":1},
"sneaker_brand" : {'brandOfSneaker" : {'Nike': JustDoIt}, "Championships" :[[ 6]]}, "Statistics" :"bunchofStats", "Address" : "Chicago,IL",     "Export_Data" : "xls", "Version: 2}  and then more junk

Я хочу извлечь следующие заголовки столбцов в pandas df: Basketball_Player_Name Статистика Адрес Экспорт данных

Затем сохраните данные, которые связаны в правильном столбце Майкл Джордан, bunchOfStats, Чикаго, Иллинойс, xls

Буду признателен за любую помощь, спасибо!

import os
import pandas as pd
import glob

### read through a directory
path =r'C:\Users\d\Desktop\data' # use your path
allFiles = glob.glob(path + "/*.dat")

#create the dataframe
frame = pd.DataFrame()

#append all the data to an empty list and read the files
list_total = []
 for file_ in allFiles:
  df = pd.read_csv(file_ , delim_whitespace = True)
  df['filename'] = os.path.basename(file_)
  list_total.append(df)


frame = pd.concat(list_total)

#Name the columns with a dictionary with the column info you want to store
frame.columns = ['names','stats','address','data_format']


#Print the frame
print(frame)

#saves data back to csv
frame.to_csv('C:/Users/d/Desktop/data/output.csv')

Но это JSON, а не CSV.

Daniel Roseman 01.05.2018 23:04

Видите ли, я не был уверен в структуре данных, как я могу выполнить структурирование, если это JSON?

celtics33 02.05.2018 00:36
pd.read_json()?
Daniel Roseman 02.05.2018 10:32

обычный read_json не работает, я получаю сообщение JSONDecodeerror

celtics33 02.05.2018 15:01

это json, встроенный в файл .dat, который я пытаюсь проанализировать в фреймворке pandas

celtics33 02.05.2018 23:09
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
5
194
0

Другие вопросы по теме