Uzaktan algılama zaman serisi analizi için Pandas kütüphanesi kullanıyorum. Sonunda, DataFrame'imi yığın boyutlarını kullanarak csv'ye kaydetmek istiyorum, ancak küçük bir sorunla karşılaşıyorum. Kodum, Pandas Serisine dönüştüğüm 6 NumPy dizisi oluşturur. Bu Serisinin her bir Pandalar DataFram (df) içine Serisi eklemek istiyorum öğelerSerisi ile DataFrame oluşturmak için Panda'ları kullanma, bellek hatasıyla sonuçlanıyor
>>> prcpSeries.shape
(12626172,)
bir sürü içerir bu yüzden bir csv dosyasına yığın tarafından onlara yığın kaydedebilirsiniz.
d = {'prcp': pd.Series(prcpSeries),
'tmax': pd.Series(tmaxSeries),
'tmin': pd.Series(tminSeries),
'ndvi': pd.Series(ndviSeries),
'lstm': pd.Series(lstmSeries),
'evtm': pd.Series(evtmSeries)}
df = pd.DataFrame(d)
outFile ='F:/data/output/run1/_'+str(i)+'.out'
df.to_csv(outFile, header = False, chunksize = 1000)
d = None
df = None
Ama benim kod Bellek Hatası
df = pd.DataFrame(d)
herhangi bir öneriniz vererek aşağıdaki çizgisinde takılıp? Pandas DataFrame parçasını yığın ile doldurmak mümkün mü?
tek sütunundan bir DataFrame yapabilir: burada alternatif (
concat
kullanarak) bir dış birleşim yerine sonra DataFrame her oluşturmak ve bir pd.DataFrane ({'tmax': pd.Series (tmaxSeries)})? –evet, bu – Mattijn
çalışır, ilk dizili bir çerçeve oluşturun ve bunları sırasıyla ekleyin, ör. '' df = DataFrame ({'prcp': pd.Series (prcpSeries)}); df ['tmax'] = pd.Series (tmaxSeries) ''. Her halükarda bir HDF5'e yazmalısınız, bakınız: http://pandas.pydata.org/pandas-docs/dev/io.html#hdf5-pytables – Jeff