Я пытаюсь читать файлы .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?
обычный read_json не работает, я получаю сообщение JSONDecodeerror
это json, встроенный в файл .dat, который я пытаюсь проанализировать в фреймворке pandas
Но это JSON, а не CSV.