एक पांडा डेटाफ्रेम में पंक्ति का उपयोग करने के लिए एक आदेशित आदेश में पंक्ति प्राप्त करने के लिए एक तेज़ तरीका ढूंढना। सूची ठीक है लेकिन बड़े डेटा सेट के साथ लंबे समय तक लगेंगे। मैं फियोना जीआईएस रीडर का उपयोग कर रहा हूं और पंक्तियों को डेटा प्रकार देने वाली स्कीमा के साथ आदेश दिया गया है। मैं डेटा में शामिल होने के लिए पांडा का उपयोग करता हूं। मैं कई मामलों में पंक्तियों के अलग-अलग प्रकार होंगे, इसलिए मैं सोच रहा था कि टाइप स्ट्रिंग के साथ एक numpy सरणी में बदलना चाल हो सकता है।पांडैस डेटाफ्रेम पंक्ति को ऑर्डरडिक्ट में तेजी से कैसे चालू करें
10
A
उत्तर
16
दुर्भाग्य से आप सिर्फ एक लागू (क्योंकि यह यह एक DataFrame वापस करने के लिए फिट बैठता है) नहीं कर सकते:
In [1]: df = pd.DataFrame([[1, 2], [3, 4]], columns=['a', 'b'])
In [2]: df
Out[2]:
a b
0 1 2
1 3 4
In [3]: from collections import OrderedDict
In [4]: df.apply(OrderedDict)
Out[4]:
a b
0 1 2
1 3 4
लेकिन आप iterrows के साथ एक सूची समझ का उपयोग कर सकते हैं:
In [5]: [OrderedDict(row) for i, row in df.iterrows()]
Out[5]: [OrderedDict([('a', 1), ('b', 2)]), OrderedDict([('a', 3), ('b', 4)])]
यह तो किसी सूची के बजाय जनरेटर का उपयोग करना संभव था, जो भी आप इसके साथ काम कर रहे थे, आमतौर पर अधिक कुशल होंगे:
In [6]: (OrderedDict(row) for i, row in df.iterrows())
Out[6]: <generator object <genexpr> at 0x10466da50>
4
यह पैरामीटर into
साथ समारोह to_dict
में pandas 0.21.0+
में कार्यान्वित किया जाता:
df = pd.DataFrame([[1, 2], [3, 4]], columns=['a', 'b'])
print (df)
a b
0 1 2
1 3 4
d = df.to_dict(into=OrderedDict, orient='index')
print (d)
OrderedDict([(0, OrderedDict([('a', 1), ('b', 2)])), (1, OrderedDict([('a', 3), ('b', 4)]))])
संबंधित मुद्दे
- 1. आर: पंक्ति तेजी से
- 2. स्पार्क डेटाफ्रेम में पंक्ति ऑब्जेक्ट से मूल्य कैसे प्राप्त करें?
- 3. प्रत्येक पंक्ति को पांडा डेटाफ्रेम
- 4. पायथन ऑर्डरडिक्ट स्पॉटिंग की तुलना में स्पटरिंग()
- 5. यूडीएफ को पूरी पंक्ति कैसे पारित करें - स्पार्क डेटाफ्रेम फ़िल्टर
- 6. पांडस डेटाफ्रेम: क्षैतिज एकल पंक्ति को कैसे मुद्रित करें?
- 7. पांडा डेटाफ्रेम पंक्ति को कई अन्य पंक्तियों में कॉपी करें
- 8. निर्देशिकाओं को तेजी से कैसे सूचीबद्ध करें?
- 9. पैंडस में हेडर पंक्ति जोड़ने के लिए कैसे करें डेटाफ्रेम
- 10. एक पांडैस श्रृंखला में एक पदानुक्रमित इंडेक्स के साथ स्रोत डेटाफ्रेम
- 11. पांडस डेटाफ्रेम: पंक्ति औसत
- 12. एनएसएसटींग को एनएसडीएटी में कैसे चालू करें?
- 13. पायथन: पांडस पहली पंक्ति द्वारा डेटाफ्रेम को विभाजित करें
- 14. "पंक्ति। नाम" कॉलम को जोड़ने के बिना पंक्ति नाम से डेटाफ्रेम कैसे विलय करता है?
- 15. पांडा डेटाफ्रेम की एक विशिष्ट पंक्ति कैसे मुद्रित करें?
- 16. प्रत्येक पंक्ति को पांडा डेटाफ्रेम में एक अलग मान
- 17. डेटाफ्रेम पर प्रत्येक पंक्ति पर फ़ंक्शन कैसे लागू करें?
- 18. डेटाफ्रेम का सहभागिता तेजी से धीमा क्यों होता है?
- 19. कैसे आप में तेजी से
- 20. सी ++ में स्ट्रीम से तेजी से स्वरूपित इनपुट कैसे करें?
- 21. fgets से तेजी से इनपुट की एक पंक्ति पढ़ें?
- 22. एक बड़ी तालिका (एसक्यूएल सर्वर) से बहुत सारे डेटा का तेजी से DELETE कैसे करें
- 23. पीएलडीबी में तेजी से
- 24. डेटाफ्रेम पांडा में दो पंक्तियों को मर्ज कैसे करें
- 25. तेजी से Enum की तुलना कैसे करें?
- 26. पांडा डेटाफ्रेम में कॉलम से स्ट्रिंग मान को कैसे हटाएं
- 27. तेजी से एक sublayer कैसे सम्मिलित करें?
- 28. कैसे तेजी से प्रोग्रामिंग
- 29. तेजी से
- 30. तेजी से