मेरे पास datetime.date द्वारा अनुक्रमित एक समय श्रृंखला है।मैं सूचकांक में तारीखों पर तारीखों पर एक पांडा समय श्रृंखला कैसे लगा सकता हूं?
1999-12-31 0
2000-06-30 170382.118454
2000-12-29 -319260.443362
मैं दिसंबर 28 वें 2000 तक श्रृंखला की शुरुआत से काट चाहते हैं, लेकिन यह काम नहीं करता क्योंकि उस तारीख सूचकांक में नहीं है (मैं एक KeyError मिल: यहाँ श्रृंखला के पहले समुद्री मील हैं जब मैं original_series[:datetime.date(2000,12,28)]
प्रयास करें। मैं भी टाइम स्टाम्प्स के सूचकांक में परिवर्तित करने की कोशिश की है, लेकिन वह बहुत नकली परिणाम देता है (यह नकली समुद्री मील, नीचे देखें बनाती है), इसलिए मैंने सोचा इस समस्या का एक अच्छा तरीका है अगर।
test = pd.Series(original_series.values, map(pd.Timestamp, original_series.index))
पहली नज़र में, यह ठीक दिखता है:
1999-12-31 0.000000
2000-06-30 170382.118454
2000-12-29 -319260.443362
लेकिन तब मैं अपने टुकड़ा करने की क्रिया करने की कोशिश (जहां जनवरी 2000 में उन अतिरिक्त दिनों से आते हैं?):
In [84]: test[:'2000-12-28']
Out[84]:
1999-12-31 0.000000
2000-06-30 170382.118454
2000-01-03 -71073.979016
2000-01-04 100498.744748
2000-01-05 91104.743684
2000-01-06 82290.255459
आपका answe आर बिल्कुल सही है, लेकिन मैं भी बेवकूफ बेवकूफ था - मैंने इंडेक्स द्वारा अपना टाइम सीरीज़ सॉर्ट नहीं किया था, इसलिए "निर्मित" तिथियों के बारे में मेरा भ्रम। सहायता के लिए धन्यवाद। –