मेरे पास डिक्टटाइम तिथियों द्वारा की गई एक शब्दकोश का नाम दिनांक_डिक्ट है, जिसमें अवलोकन की पूर्णांक संख्याओं के अनुरूप मान हैं। मैं इसे सेंसर किए गए अवलोकनों के साथ एक स्पैस श्रृंखला/डेटाफ्रेम में परिवर्तित करता हूं जिसे मैं लगातार तारीखों के साथ एक श्रृंखला/डेटाफ्रेम में शामिल होना या कनवर्ट करना चाहता हूं। गंदा सूची समझ मेरी हैक इस तथ्य को पाने के लिए है कि पांडा स्पष्ट रूप से डेटटाइम डेट ऑब्जेक्ट्स को उचित डेटटाइम इंडेक्स में स्वचालित रूप से गुप्त नहीं करेंगे।स्पैस डेटाफ्रेम से निरंतर पांडा डेटाफ्रेम भरना
df1 = pd.DataFrame(data=date_dict.values(),
index=[datetime.datetime.combine(i, datetime.time())
for i in date_dict.keys()],
columns=['Name'])
df1 = df1.sort(axis=0)
इस उदाहरण में 1258 अवलोकन हैं और डेटटाइम इंडेक्स 2003-06-24 से 2012-11-07 तक चलता है।
df1.head()
Name
Date
2003-06-24 2
2003-08-13 1
2003-08-19 2
2003-08-22 1
2003-08-24 5
मैं एक सतत दिनांक समय सूचकांक के साथ एक खाली dataframe बना सकते हैं, लेकिन यह एक अनावश्यक स्तंभ का परिचय और भद्दा लगता है। मुझे लगता है कि मैं शामिल होने के साथ एक और अधिक सुरुचिपूर्ण समाधान खो रहा हूँ।
df2 = pd.DataFrame(data=None,columns=['Empty'],
index=pd.DateRange(min(date_dict.keys()),
max(date_dict.keys())))
df3 = df1.join(df2,how='right')
df3.head()
Name Empty
2003-06-24 2 NaN
2003-06-25 NaN NaN
2003-06-26 NaN NaN
2003-06-27 NaN NaN
2003-06-30 NaN NaN
वहाँ एक सरल या अधिक सुरुचिपूर्ण तरीका एक विरल dataframe से एक सतत dataframe को भरने के लिए इतना है कि वहाँ (1) एक सतत सूचकांक, (2) Nans 0s हैं, और (3) वहाँ है कोई है डेटाफ्रेम में बाएं से अधिक खाली कॉलम?
Name
2003-06-24 2
2003-06-25 0
2003-06-26 0
2003-06-27 0
2003-06-30 0
धन्यवाद! मैंने ts.reindex (pd.date_range (min (date_index), अधिकतम (date_index)), fill_value = 0 का उपयोग किया) –