उदाहरण के साथ पांडा read_csv()
पांडा में CSV आयात करें
TensorFlow ट्यूटोरियल के दौरान, आप वयस्क डेटासेट का उपयोग करेंगे। इसका उपयोग अक्सर वर्गीकरण कार्य के साथ किया जाता है। यह इस URL में उपलब्ध है https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data
डेटा को CSV प्रारूप में संग्रहीत किया जाता है। इस डेटासेट में आठ श्रेणीबद्ध चर शामिल हैं:
इस डेटासेट में 8 श्रेणीबद्ध चर शामिल हैं:
- वर्कक्लास
- शिक्षा
- वैवाहिक
- व्यवसाय
- संबंध
- दौड़
- लिंग
- जन्मभूमि
और, 6 सतत चर:
- उम्र
- एफएनएलडब्ल्यूजीटी
- शिक्षा_संख्या
- पूंजी_लाभ
- पूंजी_हानि
- घंटे_सप्ताह
पांडा read_csv() विधि
CSV डेटासेट आयात करने के लिए, आप ऑब्जेक्ट pd.read_csv() का उपयोग कर सकते हैं। इसके अंदर मूल तर्क यह है:
पांडा read_csv() सिंटैक्स
pandas.read_csv(filepath_or_buffer,sep=', ',`names=None`,`index_col=None`,`skipinitialspace=False`)
- फ़ाइलपथ_या_बफ़र: डेटा वाला पथ या URL
- सितम्बर=', ': उपयोग करने के लिए सीमांकक को परिभाषित करें
- `नाम=कोई नहीं`: कॉलम को नाम दें। यदि डेटासेट में दस कॉलम हैं, तो आपको दस नाम पास करने होंगे
- `index_col=कोई नहीं`: यदि हाँ, तो पहले कॉलम का उपयोग पंक्ति सूचकांक के रूप में किया जाता है
- `skipinitialspace=गलत`: सीमांकक के बाद रिक्त स्थान छोड़ें.
Read_csv() के बारे में अधिक जानकारी के लिए कृपया आधिकारिक दस्तावेज़ देखें:
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html
पांडा read_csv() उदाहरण
## Import csv import pandas as pd ## Define path data COLUMNS = ['age','workclass', 'fnlwgt', 'education', 'education_num', 'marital', 'occupation', 'relationship', 'race', 'sex', 'capital_gain', 'capital_loss', 'hours_week', 'native_country', 'label'] PATH = "https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data" df_train = pd.read_csv(PATH, skipinitialspace=True, names = COLUMNS, index_col=False) df_train.shape
आउटपुट:
(32561, 15)
पांडा ग्रुपबाय() विधि
डेटा देखने का एक आसान तरीका ग्रुपबाय विधि का उपयोग करना है। यह विधि आपको समूह के अनुसार डेटा को सारांशित करने में मदद कर सकती है। नीचे ग्रुपबाय() विधि के साथ उपलब्ध विधियों की सूची दी गई है:
- गिनती: गिनती
- मिनट: मिनट
- अधिकतम: अधिकतम
- औसत औसत
- माध्यिका: माध्यिका
- मानक विचलन: एसडीटी
- आदि
groupby() के अंदर, आप उस कॉलम का उपयोग कर सकते हैं जिस पर आप विधि लागू करना चाहते हैं।
आइए वयस्क डेटासेट के साथ एक एकल समूहीकरण पर नज़र डालें। आपको राजस्व के प्रकार के अनुसार सभी सतत चरों का औसत मिलेगा, यानी 50k से ऊपर या 50k से नीचे:
df_train.groupby(['label']).mean()
लेबल | उम्र | एफएनएलडब्ल्यूजीटी | शिक्षा_संख्या | पूंजी_लाभ | पूंजी_हानि | घंटे_सप्ताह |
---|---|---|---|---|---|---|
<= 50K | 36.783738 | 190340.86517 | 9.595065 | 148.752468 | 53.142921 | 38.840210 |
> 50K | 44.249841 | 188005.00000 | 11.611657 | 4006.142456 | 195.001530 | 45.473026 |
आप घर के प्रकार के आधार पर न्यूनतम आयु प्राप्त कर सकते हैं:
df_train.groupby(['label'])['age'].min() label <=50K 17 >50K 19 Name: age, dtype: int64
आप कई कॉलम के आधार पर भी समूह बना सकते हैं। उदाहरण के लिए, आप घर के प्रकार और वैवाहिक स्थिति के अनुसार अधिकतम पूंजीगत लाभ प्राप्त कर सकते हैं।
df_train.groupby(['label', 'marital'])['capital_gain'].max() label marital <=50K Divorced 34095 Married-AF-spouse 2653 Married-civ-spouse 41310 Married-spouse-absent 6849 Never-married 34095 Separated 7443 Widowed 6849 >50K Divorced 99999 Married-AF-spouse 7298 Married-civ-spouse 99999 Married-spouse-absent 99999 Never-married 99999 Separated 99999 Widowed 99999 Name: capital_gain, dtype: int64
आप ग्रुपबाय के बाद प्लॉट बना सकते हैं। ऐसा करने का एक तरीका ग्रुपिंग के बाद प्लॉट का उपयोग करना है।
अधिक उत्कृष्ट प्लॉट बनाने के लिए, आप mean() के बाद unstack() का उपयोग करेंगे ताकि आपके पास समान मल्टीलेवल इंडेक्स हो, या आप 50k से कम और 50k से अधिक राजस्व के आधार पर मानों को जोड़ दें। इस मामले में, प्लॉट में 14 (2*7) के बजाय दो समूह होंगे।
आप उपयोग करते हैं Jupyter नोटबुक%matplotlib को इनलाइन जोड़ना सुनिश्चित करें, अन्यथा कोई प्लॉट प्रदर्शित नहीं किया जाएगा
%matplotlib inline df_plot = df_train.groupby(['label', 'marital'])['capital_gain'].mean().unstack() df_plot
सारांश
- CSV डेटासेट आयात करने के लिए पांडा, आप ऑब्जेक्ट pd.read_csv() का उपयोग कर सकते हैं.
- groupby() विधि आपको समूह के आधार पर डेटा को सारांशित करने में मदद कर सकती है।
- आप कई कॉलम के आधार पर भी समूह बना सकते हैं। उदाहरण के लिए, आप घर के प्रकार और वैवाहिक स्थिति के अनुसार अधिकतम पूंजीगत लाभ प्राप्त कर सकते हैं।