pandas 0.23 - pandas.read_json()

pandas.read_json




pandas

pandas.read_json

pandas.read_json(path_or_buf=None, orient=None, typ='frame', dtype=True, convert_axes=True, convert_dates=True, keep_default_dates=True, numpy=False, precise_float=False, date_unit=None, encoding=None, lines=False, chunksize=None, compression='infer') [source]

एक JSON स्ट्रिंग को पांडा ऑब्जेक्ट में कनवर्ट करें

पैरामीटर:

path_or_buf : एक मान्य JSON स्ट्रिंग या फ़ाइल की तरह, डिफ़ॉल्ट: कोई नहीं

स्ट्रिंग एक URL हो सकता है। मान्य URL योजनाओं में http, ftp, s3 और फ़ाइल शामिल हैं। फ़ाइल URL के लिए, एक होस्ट अपेक्षित है। उदाहरण के लिए, एक स्थानीय फ़ाइल फ़ाइल हो सकती file://localhost/path/to/table.json

ओरिएंट : स्ट्रिंग,

अपेक्षित JSON स्ट्रिंग प्रारूप का संकेत। संगत JSON स्ट्रिंग्स को to_json() द्वारा संगत ओरिएंट मूल्य के साथ उत्पादित किया जा सकता है। संभावित मरीजों का समूह है:

  • 'split' : जैसे {index -> [index], columns -> [columns], data -> [values]}
  • 'records' : सूची [{column -> value}, ... , {column -> value}]
  • 'index' : {index -> {column -> value}}
  • 'columns' : {column -> {index -> value}}
  • 'values' : सिर्फ मान सरणी

अनुमत और डिफ़ॉल्ट मान typ पैरामीटर के मान पर निर्भर करते हैं।

  • जब typ == 'series' ,
    • अनुमति प्राप्त ग्राहक {'split','records','index'}
    • डिफ़ॉल्ट 'index'
    • श्रृंखला सूचकांक उन्मुख 'index' लिए अद्वितीय होना चाहिए।
  • जब typ == 'frame' ,
    • अनुमति प्राप्त ग्राहक {'split','records','index', 'columns','values', 'table'}
    • डिफ़ॉल्ट 'columns'
    • DataFrame इंडेक्स 'index' और 'columns' लिए विशिष्ट होना चाहिए।
    • डेटाफ्रेम कॉलम 'index' , 'columns' और 'records' लिए अद्वितीय होना चाहिए।

संस्करण 0.23.0 में नया: orient तर्क के लिए एक अनुमत मूल्य के रूप में 'तालिका'

typ : type of object to recover (series or frame), default 'frame'

dtype : बूलियन या तानाशाही , डिफ़ॉल्ट सही

यदि True, infert dtypes, यदि स्तंभ का एक प्रकार dtype है, तो उन का उपयोग करें, यदि गलत है, तो dtypes को बिल्कुल भी न लगाएँ, केवल डेटा पर लागू होता है।

Convert_axes : बूलियन, डिफ़ॉल्ट सही

कुल्हाड़ियों को उचित dtypes में बदलने की कोशिश करें।

Convert_dates : बूलियन, डिफ़ॉल्ट सही

तारीखों के लिए स्तंभों की सूची; यदि यह सत्य है, तो डेटेलक कॉलम को डिफ़ॉल्ट रूप से पार्स करने का प्रयास सत्य है; यदि कोई स्तंभ लेबल डेटेलिक है तो

  • यह '_at' साथ समाप्त होता है,
  • यह '_time' साथ समाप्त होता है,
  • यह 'timestamp' शुरू होता है,
  • यह 'modified' , या
  • यह 'date'

Keep_default_dates : बूलियन, डिफ़ॉल्ट सही

यदि तारीखें पार्स कर रही हैं, तो डिफ़ॉल्ट डेटेलिक कॉलम को पार्स करें

सुन्न : बूलियन, डिफ़ॉल्ट गलत

प्रत्यक्ष डिकोडिंग सुन्न सरणियों के लिए। केवल संख्यात्मक डेटा का समर्थन करता है, लेकिन गैर-संख्यात्मक कॉलम और इंडेक्स लेबल समर्थित हैं। यह भी ध्यान रखें कि यदि आवश्यक हो तो JSON प्रत्येक शब्द के लिए समान होना चाहिए।

exact_float : बूलियन, डिफ़ॉल्ट गलत

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

date_unit : स्ट्रिंग, डिफ़ॉल्ट कोई नहीं

तिथियों को परिवर्तित करने का पता लगाने के लिए टाइमस्टैम्प इकाई। डिफ़ॉल्ट व्यवहार सही सटीकता का प्रयास करने और उसका पता लगाने के लिए है, लेकिन अगर यह वांछित नहीं है, तो केवल सेकंड, मिलीसेकंड, माइक्रोसेकंड या नैनोसेकंड को पार्स करने के लिए मजबूर करने के लिए 's', 'ms', 'us' या 'ns' में से एक पास करें।

लाइनों : बूलियन, डिफ़ॉल्ट गलत

प्रति पंक्ति एक json ऑब्जेक्ट के रूप में फ़ाइल पढ़ें।

संस्करण में नया 0.19.0।

एन्कोडिंग : str, डिफ़ॉल्ट 'utf-8' है

Py3 बाइट्स को डिकोड करने के लिए उपयोग करने के लिए एन्कोडिंग।

संस्करण में नया 0.19.0।

हिस्सा: पूर्णांक, डिफ़ॉल्ट कोई नहीं

वापसी JsonReader वस्तु पुनरावृत्ति के लिए। Chunksize पर अधिक जानकारी के लिए लाइन-डेलिमेटेड json डॉक्स देखें। यह तभी पास किया जा सकता है जब lines=True । यदि यह कोई नहीं है, तो फ़ाइल को एक ही बार में मेमोरी में पढ़ा जाएगा।

संस्करण में नया 0.21.0।

कम्प्रेशन : {'infert', 'gzip', 'bz2', 'zip', 'xz', कोई नहीं}, डिफ़ॉल्ट 'infer'

ऑन-द-डिस्क डेटा के ऑन-द-फ्लाई-डिकंप्रेसन के लिए। यदि 'अनुमान' है, तो gzip, bz2, zip या xz का उपयोग करें यदि path_or_buf क्रमशः '.gz', '.bz2', '.zip', या 'xz' में समाप्त हो रहा है और अन्यथा कोई अपघटन नहीं है। यदि 'zip' का उपयोग किया जाता है, तो ज़िप फ़ाइल में पढ़ने के लिए केवल एक डेटा फ़ाइल होनी चाहिए। कोई भी अपघटन के लिए सेट नहीं है।

संस्करण में नया 0.21.0।

यह दिखाता है:
result : Series or DataFrame, depending on the value of typ.

यह भी देखें

DataFrame.to_json

टिप्पणियाँ

orient='table' लिए विशिष्ट, यदि कोई DataFrame Index शाब्दिक Index नाम के साथ to_json() लिखा जाता है, तो बाद में पढ़ा गया संचालन गलत तरीके से Index नाम को None सेट None । इसका कारण यह है कि index का उपयोग DataFrame.to_json द्वारा अनुपलब्ध Index नाम को दर्शाने के लिए भी किया जाता है, और बाद में read_json() ऑपरेशन दोनों के बीच अंतर नहीं कर सकता है। एक ही सीमा का सामना एक MultiIndex और 'level_' शुरू होने वाले किसी भी नाम से होता है।

उदाहरण

>>> df = pd.DataFrame([['a', 'b'], ['c', 'd']],
...                   index=['row 1', 'row 2'],
...                   columns=['col 1', 'col 2'])

'split' का उपयोग करके किसी डेटाफ़्रेम को एन्कोडिंग / डिकोड करना स्वरूपित JSON:

>>> df.to_json(orient='split')
'{"columns":["col 1","col 2"],
  "index":["row 1","row 2"],
  "data":[["a","b"],["c","d"]]}'
>>> pd.read_json(_, orient='split')
      col 1 col 2
row 1     a     b
row 2     c     d

'index' फॉर्मेट किए गए JSON का उपयोग करके किसी डेटाफ़्रेम को एन्कोडिंग / डिकोड करना:

>>> df.to_json(orient='index')
'{"row 1":{"col 1":"a","col 2":"b"},"row 2":{"col 1":"c","col 2":"d"}}'
>>> pd.read_json(_, orient='index')
      col 1 col 2
row 1     a     b
row 2     c     d

'records' फॉर्मेट किए गए JSON का उपयोग करके किसी डेटाफ़्रेम को एन्कोडिंग / डिकोड करना। ध्यान दें कि इंडेक्स लेबल इस एन्कोडिंग के साथ संरक्षित नहीं हैं।

>>> df.to_json(orient='records')
'[{"col 1":"a","col 2":"b"},{"col 1":"c","col 2":"d"}]'
>>> pd.read_json(_, orient='records')
  col 1 col 2
0     a     b
1     c     d

तालिका स्कीमा के साथ एन्कोडिंग

>>> df.to_json(orient='table')
'{"schema": {"fields": [{"name": "index", "type": "string"},
                        {"name": "col 1", "type": "string"},
                        {"name": "col 2", "type": "string"}],
                "primaryKey": "index",
                "pandas_version": "0.20.0"},
    "data": [{"index": "row 1", "col 1": "a", "col 2": "b"},
            {"index": "row 2", "col 1": "c", "col 2": "d"}]}'