2015-07-08 12 views
7

Series के दस्तावेज़ में, name और fastpath का उपयोग पैरामीटर समझाया नहीं गया है। वो क्या करते हैं?पांडस श्रृंखला में नाम पैरामीटर क्या है?

+1

आप एक 'DataFrame' से एक पंक्ति का उपयोग कर' df.ix [0] ', जिसके परिणामस्वरूप वस्तु' name' विशेषता के रूप में मूल सूचकांक के साथ एक 'Series' है स्लाइस हैं। 'फास्टपाथ' मुझे अभी तक सामना नहीं हुआ है। – Finwood

+0

@ फ़िनवुड क्या आप एक उदाहरण दे सकते हैं? – Sounak

+2

'नाम' श्रृंखला का गुण है, यह एक डीएफ में अधिक महत्वपूर्ण हो जाता है जहां' नाम 'कॉलम का नाम होता है। मैं निश्चित रूप से यह नहीं कह सकता कि 'फास्टपाथ' क्या है लेकिन स्रोत कोड को देखते हुए यह जांचने के लिए एक आंतरिक ध्वज है कि डेटा शॉर्ट सर्किट के लिए एक होमोजेनस सरणी है – EdChum

उत्तर

10

name तर्क आप एक Series वस्तु, स्तंभ के लिए अर्थात करने के लिए एक नाम देने के लिए अनुमति देता है। ताकि जब आप इसे DataFrame में डाल देंगे, तो कॉलम को name पैरामीटर के अनुसार नामित किया जाएगा।

उदाहरण:

In [1]: s = pd.Series(["A","B","C"], name="foo") 

In [2]: s 
Out[2]: 
0 A 
1 B 
2 C 
Name: foo, dtype: object 

In [3]: pd.DataFrame(s) 
Out[4]: 
    foo 
0 A 
1 B 
2 C 

आप दे नहीं है, तो एक name अपने Series को यह स्वचालित रूप से नाम दिया जाएगा। यहाँ यह dataframe वस्तु में एक 0 हो जाएगा:

0 
0 A 
1 B 
2 C 

fastpath के लिए, यह एक आंतरिक पैरामीटर है और एक मुद्दा पहले से ही सूचित किया गया है:

https://github.com/pydata/pandas/issues/6903

2

pd.Seriescolumn name बनें जब आप उन्हें एक साथ जोड़ते हैं। इसके विपरीत, जब आप dataframe से कॉलम निकालते हैं, तो column name निकाले गए pd.Series के नाम के रूप में column name है।

import pandas as pd 
import numpy as np 

s1 = pd.Series(np.random.randn(10), name='series1') 
s2 = pd.Series(np.random.randn(10), name='series2') 
pd.concat([s1, s2], axis=1) 

Out[16]: 
    series1 series2 
0 0.3499 0.3017 
1 -2.2980 -1.1121 
2 -1.4517 -0.5107 
3 -0.4596 -0.0855 
4 -0.3230 0.5391 
5 -0.1764 -0.3218 
6 2.4806 -0.6129 
7 1.6766 1.1408 
8 -1.2407 0.4857 
9 0.3587 -1.5752 
0

सभी जानकारी को जोड़ना, मैं सिर्फ सीखा है कि जब आपको श्रृंखला का उपयोग करके एक पंक्ति जोड़ना है, तो दो विकल्प हैं: 1) ignore_index = सही, इस मामले में, यह सेट इंडेक्स को हटा देगा और इसे संख्यात्मक इंडेक्स (डिफ़ॉल्ट) 2 पर रीसेट कर देगा) करने में मदद करता है वर्तमान डेटाफ्रेम संरचना को रखें और नाम पैरामीटर का उपयोग बहु इंडेक्स (क्रम में) के रूप में करें।

0

'नाम' पैरामीटर का एक और उपयोग है। मैं एक उदाहरण दूंगा। इस उदाहरण में हम देखेंगे कि 'नाम' पैरामीटर मानों के लिए इंडेक्स नाम के रूप में उपयोग किया जा सकता है।

purchase_1 = pd.Series({'Name': 'JJ', 
         'Item': 'A', 
         'Cost': 22.00}) 
purchase_2 = pd.Series({'Name': 'KK', 
         'Item': 'B', 
         'Cost': 22.50}) 

dfn = pd.DataFrame([purchase_1, purchase_2], index=['Store X', 'Store Y']) 

dfn = dfn.append(pd.Series(data={'Cost': 30.00, 'Item': 'C','Name': 'TT'}, name='Store Y')) 
dfn 



Out[3]: 
     Cost Item Name 
Store X 22.0 A JJ 
Store Y 22.5 B KK 
Store Y 30.0 C TT 
संबंधित मुद्दे