python एक पांडस डेटाफ्रेम में समूहित डेटा से हिस्टोग्राम प्लॉट करना




1 Answers

आपका फ़ंक्शन विफल हो रहा है क्योंकि आपके द्वारा समाप्त किए गए .hist() में एक पदानुक्रमित सूचकांक और दो कॉलम (पत्र और एन) हैं, इसलिए जब आप करते हैं। .hist() यह दोनों स्तंभों का हिस्टोग्राम बनाने की कोशिश कर रहा है इसलिए स्ट्र त्रुटि।

यह पांडा प्लॉटिंग फ़ंक्शंस (कॉलम प्रति एक प्लॉट) का डिफ़ॉल्ट व्यवहार है, इसलिए यदि आप अपने डेटा फ्रेम को दोबारा बदलते हैं ताकि प्रत्येक अक्षर एक कॉलम हो, आपको वही मिल जाएगा जो आप चाहते हैं।

df.reset_index().pivot('index','Letter','N').hist()

reset_index() इंडेक्स नामक कॉलम में वर्तमान इंडेक्स को reset_index() लिए है। फिर pivot आपके डेटा फ्रेम ले जाएगा, प्रत्येक Letter लिए सभी मान N एकत्रित करें और उन्हें एक कॉलम बनाएं। परिणामी डेटा फ्रेम 400 पंक्तियों के रूप में ( NaN साथ गुम मूल्यों को भरता है) और तीन कॉलम ( A, B, C )। hist() फिर प्रति स्तंभ एक हिस्टोग्राम का उत्पादन करेगा और आप आवश्यकतानुसार प्लॉट प्रारूपित करेंगे।

python pandas histogram

मुझे पांडा डेटाफ्रेम में समूहीकृत डेटा से हिस्टोग्राम के ब्लॉक को साजिश करने के तरीके में काम करने में कुछ मार्गदर्शन चाहिए। मेरे प्रश्न को स्पष्ट करने के लिए यहां एक उदाहरण दिया गया है:

from pandas import DataFrame
import numpy as np
x = ['A']*300 + ['B']*400 + ['C']*300
y = np.random.randn(1000)
df = DataFrame({'Letter':x, 'N':y})
grouped = df.groupby('Letter')

मेरी अज्ञानता में मैंने इस कोड कमांड की कोशिश की:

df.groupby('Letter').hist()

जो त्रुटि संदेश के साथ विफल रहा "TypeError: 'str' और 'float' ऑब्जेक्ट्स को संयोजित नहीं कर सकता"

किसी भी मदद की सराहना की।




Related