कैश फ्लो स्टेटमेंट से वित्तीय अनुपात

Python में Financial Statements का विश्लेषण

Rohan Chatterjee

Risk Modeler

JSON डेटा पढ़ना

  • असली दुनिया का डेटा हमेशा स्प्रेडशीट में नहीं आता
  • कई बार यह JSON ("JavaScript Object Notation") फॉर्मेट में आता है
  • कंपनियाँ अपना फाइनेंशियल स्टेटमेंट डेटा JSON में साझा कर सकती हैं
  • हम pandas से JSON फाइलें Python में पढ़ सकते हैं
cash_flow = pd.read_json("cash_flow_statement.json")
print(cash_flow.head())

यह इमेज लोड किए गए कैश फ्लो स्टेटमेंट डेटा की पहली 5 पंक्तियाँ दिखाती है.

Python में Financial Statements का विश्लेषण

कैश फ्लो टू नेट इनकम अनुपात

  • ऑपरेटिंग गतिविधियों से कैश फ्लो का नेट इनकम से अनुपात

  • ऑपरेटिंग गतिविधियाँ व्यवसाय की मुख्य गतिविधियाँ हैं

  • उच्च अनुपात दर्शाता है कि व्यवसाय ऑपरेटिंग गतिविधियों से पर्याप्त कैश जनरेट करता है

सूत्र:

$$\dfrac{\text{Cash flow from operating activities}}{\text{Net income}}$$

Python में Financial Statements का विश्लेषण

ऑपरेटिंग कैश फ्लो अनुपात

  • ऑपरेटिंग गतिविधियों से कैश फ्लो का करेंट लायबिलिटीज से अनुपात
  • मापता है कि कंपनी कोर बिज़नेस से जनरेट कैश से शॉर्ट-टर्म देनदारियाँ कितनी बार चुका सकती है
  • 1 से अधिक अनुपात दर्शाता है कि शॉर्ट-टर्म दायित्वों के लिए पर्याप्त से अधिक कैश बन रहा है

सूत्र:

$$\dfrac{\text{Cash flow from operating activities}}{\text{Current liabilities}}$$

Python में Financial Statements का विश्लेषण

मिसिंग वैल्यू इम्प्यूट करना

  • "वाइल्ड" डेटा में अक्सर missing values होती हैं
  • कभी रेशियो का न्यूमेरेटर मिलता है पर डिनोमिनेटर missing होता है, या उल्टा
  • समाधान: missing डेटा को दूसरी कंपनियों के डेटा से इम्प्यूट करें
Python में Financial Statements का विश्लेषण

मिसिंग वैल्यू इम्प्यूट करना

  • दिए गए dataset DataFrame में "Total Current Liabilities" की कुछ एंट्रियाँ missing हैं, जिन्हें NaN से दिखाया गया है

यह इमेज कैश फ्लो स्टेटमेंट की शुरुआती पंक्तियाँ दिखाती है जहाँ टोटल लायबिलिटीज कॉलम में कुछ वैल्यू missing हैं.

  • किसी कंपनी की missing current liabilities उसी कंपनी की उपलब्ध non-missing वैल्यू से इम्प्यूट की जा सकती हैं
Python में Financial Statements का विश्लेषण

मिसिंग वैल्यू इम्प्यूट करना

  • हम missing वैल्यू को कंपनियों की non-missing वैल्यू के औसत से भरते हैं:
imputation = dataset.groupby("company")["Total Current Liabilities"].transform("mean")

dataset["Imputed Total Current Liabilities"] = dataset["Total Current Liabilities"].fillna(imputation)
  • इम्प्यूट करने के बाद, dataset इस तरह दिखता है:

यह इमेज कैश फ्लो स्टेटमेंट की शुरुआती पंक्तियाँ दिखाती है जहाँ टोटल लायबिलिटीज कॉलम में missing वैल्यू थीं. साथ में imputed total current liabilities कॉलम है जहाँ missing वैल्यू भरी गई हैं.

  • सावधानी के लिए परसेंटाइल्स लें
Python में Financial Statements का विश्लेषण

परसेंटाइल्स से मिसिंग वैल्यू इम्प्यूट करना

  • 70th परसेंटाइल की बदतर non-missing वैल्यू से इम्प्यूट करने पर अधिक कंज़र्वेटिव अनुमान मिलता है.

  • यदि रेशियो निर्णयों में उपयोग होगा, तो अधिक कंज़र्वेटिव इम्प्यूटेशन से कैलकुलेशन अधिक सतर्क हो सकते हैं.

  • company के अनुसार ग्रुप कर 70th परसेंटाइल से इम्प्यूट करना:
imputation = dataset.groupby("company")["Total Current Liabilities"]\
    .transform(lambda x: np.nanquantile(x, 0.7))

dataset["Imputed Total Current Liabilities"] = dataset["Total Current Liabilities"]\
    .fillna(imputation)
Python में Financial Statements का विश्लेषण

अभ्यास करते हैं!

Python में Financial Statements का विश्लेषण

Preparing Video For Download...