के साथ संग्रहीत करने में डेटाफ्रेम अपडेट करें, मैं एक ऐसा फ़ंक्शन बनाने की कोशिश कर रहा हूं जो एक पांडा डेटाफ्रेम को संग्रहीत करता है जिसे मैंने पैंडस डेटाफ्रेम से नए डेटा के साथ एक पायटेबल में संग्रहीत किया है। मैं यह जांचना चाहता हूं कि विशिष्ट डेटाटाइंड इंडेक्स के लिए पीईटीबल में कुछ डेटा गुम है (मान NaN है या एक नया टाइमस्टैम्प उपलब्ध है), इसे किसी दिए गए पांडा डेटाफ्रेम से नए मानों के साथ प्रतिस्थापित करें और इसे पायटेबल में संलग्न करें। असल में, बस एक पिक्टेबल अद्यतन करें। मैं पांडा में combine_first विधि का उपयोग कर संयुक्त डेटाफ्रेम प्राप्त कर सकता हूं। Pytable नीचे डमी डेटा के साथ बनाई गई है:पैंडस डेटाफ्रेम को किसी अन्य पांडा डेटाफ्रेम
import pandas as pd import numpy as np import datetime as dt index = pd.DatetimeIndex(start = dt.datetime(2001,1,1,0,0), periods = 20000,freq='10T') data_in_pytable = pd.DataFrame(index=index,data=np.random.randn(20000,2),columns=['value_1','value_2']) data.to_hdf(r'C:\pytable.h5','test',mode='r+',append=True,complevel=9,complib='zlib')
तो pytable बनाई गई है। मैं मान लिया जाये कि है एक और dataFrame जिसके साथ मैं के साथ Pytable अपडेट करना चाहते हैं:
new_index = pd.DatetimeIndex(start = dt.datetime(2001,5,1,0,0), periods = 10000,freq='10T') data_to_update=pd.DataFrame(index=new_index,data=np.random.randn(10000,2),columns=['value_1','value_2']) store=pd.HDFStore(r'C:\pytable.h5',mode='r+',complevel=9,complib='zlib') store.append('test',store.select('test').combine_first(data_to_update)) store.close()
समस्या यह है कि PyTable मूल मूल्यों रहता है, मौजूदा अपडेट नहीं होता। अब मेरे पास डुप्लिकेट प्रविष्टियां हैं (इंडेक्स द्वारा) क्योंकि मूल मान ओवरराइट नहीं किए जाते हैं।
सारांश: मैं किसी अन्य डेटाफ्रेम के साथ एक PyTable को कैसे अपडेट कर सकता हूं?
धन्यवाद, ELV
वास्तव में, यह मेरा अस्थायी समाधान था। जानकारी के लिए धन्यवाद – Elvin