Ich analysiere eine Liste von Elementen, Element für Element in Pandas Append-Funktion. pandas.DataFrame.appendPandas - Liste der Liste nicht an Datenrahmen angehängt
from pyquery import PyQuery as pq
import pandas as pd
import argparse
# from glob import glob
parser = argparse.ArgumentParser(description=None)
def GetArgs(parser):
"""Parser function using argparse"""
# parser.add_argument('directory', help='directory use',
# action='store', nargs='*')
parser.add_argument("files", nargs="+")
return parser.parse_args()
fileList = GetArgs(parser)
print(fileList.files)
data = []
frames = pd.DataFrame()
attrs = ('id', 'horse')
for items in fileList.files:
d = pq(filename=items)
res = d('nomination')
dataSets = [[res.eq(i).attr(x)
for x in attrs] for i in range(len(res))]
print(dataSets)
aDF = pd.DataFrame(dataSets,)
frames.append(aDF)
print(frames)
ich aus der Ausgabe sehen kann, dass ich die Daten erhalten und dass ich eine Liste von Listen in die dfame Parsen jedoch angehängt werden wird, einen leeren Datenrahmen läuft
(pyquery)[email protected]:~/Projects/pyquery$ python jqxml.py samples/*.xml
['samples/20160402RAND0.xml']
[['198247', 'Astern'], ['199039', 'El Divino'], ['199616', 'Geneteau'], ['197890', 'Alliterate'], ['201416', 'Hostwin Legend'], ['202829', 'Lionhearted'], ['199619', 'Mooshakissa'], ['202345', "Let's Dream Big"], ['200794', 'Prince Chabal'], ['202766', 'Red Handle'], ['198442', "He's Our Rokkii (NZ)"], ['188683', 'Odyssey Moon'],
...
['193862', 'Karaka Lass'], ['193850', 'Alittle Loose'], ['191829', "Aurora's Star"], ['196396', 'Shanakee (NZ)'], ['192985', 'Rainbow Park (NZ)'], ['192983', "Daisy's Joy"], ['198039', 'Shotgun Roulette'], ['188872', "Peggy's Cove"], ['188981', 'Heartlings']]
Empty DataFrame
Columns: []
Index: []
Ich bin mir nicht sicher, warum das nicht hängt.
Können Sie das ein lauffähiges Beispiel machen? IOW, kratzen Sie alle 'getArgs' und Datei I/O bezogenen Code und stattdessen nur einige repräsentative Daten fest codieren? –