पांडा: अलग-अलग लंबाई वाले एक निर्देश से एक डेटाफ़्रेम बनाएं
आप एक शब्दकोश से पांडा डेटाफ़्रेम बनाने के लिए निम्नलिखित मूल वाक्यविन्यास का उपयोग कर सकते हैं जिनकी प्रविष्टियों की लंबाई अलग-अलग है:
import pandas as pd df = pd. DataFrame (dict([(key, pd. Series (value)) for key, value in some_dict. items ()]))
यह सिंटैक्स शब्दकोश सरणियों की सूची को पांडा श्रृंखला की सूची में परिवर्तित करता है।
यह हमें एक पांडा डेटाफ़्रेम बनाने और केवल NaN मान भरने की अनुमति देता है ताकि यह सुनिश्चित हो सके कि परिणामी डेटाफ़्रेम में प्रत्येक कॉलम समान लंबाई का हो।
निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।
उदाहरण: अलग-अलग लंबाई वाले निर्देशांक से पांडा डेटाफ़्रेम बनाएं
मान लीजिए कि हमारे पास निम्नलिखित शब्दकोश है जिसमें विभिन्न लंबाई की प्रविष्टियाँ हैं:
#create dictionary whose entries have different lengths some_dict = dict(A=[2, 5, 5, 7, 8], B=[9, 3], C=[4, 4, 2]) #view dictionary print (some_dict) {'A': [2, 5, 5, 7, 8], 'B': [9, 3], 'C': [4, 4, 2]}
यदि हम इस शब्दकोश को पांडा डेटाफ़्रेम में बदलने के लिए from_dict() फ़ंक्शन का उपयोग करने का प्रयास करते हैं, तो हमें एक त्रुटि प्राप्त होगी:
import pandas as pd #attempt to create pandas DataFrame from dictionary df = pd. DataFrame . from_dict (some_dict) ValueError : All arrays must be of the same length
हमें यह बताते हुए एक त्रुटि प्राप्त होती है कि शब्दकोश में सभी सारणियों की लंबाई समान होनी चाहिए।
इस त्रुटि को हल करने के लिए, हम डिक्शनरी को डेटाफ़्रेम में बदलने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:
import pandas as pd #create pandas DataFrame from dictionary df = pd. DataFrame (dict([(key, pd. Series (value)) for key, value in some_dict. items ()])) #view DataFrame print (df) ABC 0 2 9.0 4.0 1 5 3.0 4.0 2 5 NaN 2.0 3 7 NaN NaN 4 8 NaN NaN
ध्यान दें कि हम सफलतापूर्वक पांडा डेटाफ़्रेम बनाने में सक्षम हैं और यह सुनिश्चित करने के लिए NaN मान गद्देदार हैं कि प्रत्येक कॉलम समान लंबाई का है।
यदि आप इन NaN मानों को अन्य मानों (जैसे शून्य) से बदलना चाहते हैं, तो आप रिप्लेस() फ़ंक्शन का उपयोग निम्नानुसार कर सकते हैं:
#replace all NaNs with zeros
df. replace (np. nan , 0, inplace= True )
#view updated DataFrame
print (df)
ABC
0 2 9.0 4.0
1 5 3.0 4.0
2 5 0.0 2.0
3 7 0.0 0.0
4 8 0.0 0.0
ध्यान दें कि प्रत्येक NaN मान को शून्य से बदल दिया गया है।
NaN मानों को आप जो भी मान चाहते हैं, उसे बदलने के लिए बेझिझक रिप्लेस() फ़ंक्शन का उपयोग करें।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि पांडा में अन्य सामान्य ऑपरेशन कैसे करें:
पांडा: डेटाफ़्रेम को शब्दकोश में कैसे परिवर्तित करें
पांडा: शब्दकोश के साथ कॉलम का नाम कैसे बदलें
पांडा: शब्दकोश का उपयोग करके NaN मान कैसे भरें