मैं एक ऐसे फ़ंक्शन के साथ खेल रहा हूं जो सीएसवी डेटा का सेवन करता है और डेटा को जेएसओएन में परिवर्तित करने के अंतिम लक्ष्य की दिशा में चरणों में से एक के रूप में कार्य करने के लिए पांडा का उपयोग करता है। समस्या यह है कि यह संख्याओं को संशोधित कर रहा है (उदाहरण के लिए 1.6 1.6000000000000001 बन जाता है)। मैं सटीकता के नुकसान के बारे में चिंतित नहीं हूं, लेकिन क्योंकि उपयोगकर्ता संख्याओं में परिवर्तन देखेंगे, ऐसा लगता है ... शौकिया।पांडस संख्याओं को संशोधित करने के लिए
मुझे पता है कि यह कुछ ऐसा है जो here से पहले आया है, लेकिन यह 2 साल पहले वास्तव में एक महान तरीके से उत्तर नहीं दिया गया था, और मेरे पास एक अतिरिक्त जटिलता है - डेटा फ्रेम जिन्हें मैं शब्दकोश में परिवर्तित करना चाहता हूं डेटाटाइप का कोई संयोजन हो सकता है। पिछले समाधान के साथ इस तरह के मुद्दे के रूप में कर रहे हैं:
- वस्तुओं के लिए सभी नंबरों को परिवर्तित ही काम करता है अगर आप नंबरों का उपयोग करने की जरूरत नहीं है - मैं रकम और औसत जो इसके अलावा दशमलव मुद्दा reintroduces गणना करने के लिए विकल्प चाहते हैं एक्स दशमलव की संख्याओं के
- फोर्स राउंडिंग या तो सटीकता को कम या डेटा के आधार पर उपयोगकर्ता अतिरिक्त अनावश्यक 0s जोड़ने
प्रदान करता है तो, एक उच्च स्तर पर होगा, मेरे सवाल यह है:
है वहाँ एक बेहतर तरीका है यह सुनिश्चित करने के लिए कि संख्याओं को संशोधित नहीं किया जा रहा है, लेकिन एक संख्यात्मक डेटाटाइप में रखा जाता है? क्या यह बदलने का सवाल है कि मैं पहली जगह सीएसवी डेटा कैसे आयात करता हूं? निश्चित रूप से एक साधारण समाधान है जिसे मैं देख रहा हूं?
import pandas as pd
import sys
if sys.version_info[0] < 3:
from StringIO import StringIO
else:
from io import StringIO
CSV_Data = "Index,Column_1,Column_2,Column_3,Column_4,Column_5,Column_6,Column_7,Column_8\nindex_1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8\nindex_2,2.1,2.2,2.3,2.4,2.5,2.6,2.7,2.8\nindex_3,3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8\nindex_4,4.1,4.2,4.3,4.4,4.5,4.6,4.7,4.8"
input_data = StringIO(CSV_Data)
df = pd.DataFrame.from_csv(path = input_data, header = 0, sep=',', index_col=0, encoding='utf-8')
print(df.to_dict(orient = 'records'))
'df.to_json (ओरिएंट = 'रिकॉर्ड')' का प्रयोग क्यों न अंत उद्देश्य json उपयोग करने के लिए है या नहीं? – Zero
@ जोहानगाल्ट मूल रूप से, स्तंभों के गतिशील घोंसले की अनुमति देने के लिए, मैं जो शब्दकोष I_dict का उपयोग कर बना रहा हूं उसे एक बड़े शब्दकोश में डाला गया है जिसे मैं बना रहा हूं, जो अंत में एक JSON पर डंप हो जाता है। –
आप 'pd.io.json.dumps (nested_dicts_with_pd_objects) 'का उपयोग कर सकते हैं, क्या यह आपके लिए काम करता है? आदर्श रूप से, इसे गोल परिदृश्य पेश नहीं करना चाहिए। – Zero