python - How to merge Series to DataFrame as columns, broadcasting -
सर्वोत्तम मैं के साथ आ सकता है
df = pd.DataFrame ({'a ': [1, 2],' बी ': [3, 4]}) # s = इंडेक्स में नाम के लिए संपादित करें s = pd.Series ({' s1 ': 5,' s2 ': 6}) देखें। df [name] = s [name] ab s1 s2 0 1 3 5 6 1 2 4 5 6 क्या कोई बेहतर सिंटैक्स / तेज पद्धति का सुझाव दे सकता है?
मेरा प्रयास:
df.merge (ए) विशेषता एंटर: 'सीरीज़' ऑब्जेक्ट में कोई विशेषता 'कॉलम' नहीं है और
df.join (s) ValueError: अन्य सीरीज़ में एक नाम होना चाहिए संपादित करें पहले दो जवाबों पर पोस्ट किया गया मेरे प्रश्न के साथ समस्या, इसलिए कृपया df : df = pd.DataFrame ({'a': [np.nan, 2, 3] के निर्माण के लिए निम्नलिखित का उपयोग करें। ], 'बी': [4, 5, 6]}, सूचकांक = [3, 5, 6]) अंतिम परिणाम के साथ
एबी एस 1 एस 2 3 एनएएन 4 5 6 5 2 5 5 6 6 3 6 5 6
<पी > आप श्रृंखला से डेटाफ्रेम का निर्माण कर सकते हैं और फिर डेटाफ़्रेम के साथ विलय कर सकते हैं। तो आप डेटा को मूल्य के रूप में निर्दिष्ट करते हैं, लेकिन लंबाई से उन्हें गुणा करते हैं, स्तंभों को सूचकांक में सेट करें और left_index और right_index के लिए सत्य सेट करें: में [27]: df.merge ( pd.DataFrame (डेटा = [s.values] * len (s), स्तंभ = s.index), left_index = true, right_index = true) आउट [27]: ab s1 s2 0 1 3 5 6 1 2 4 5 6 स्थिति के लिए संपादित करें जहां आप डीएफ के सूचकांक का उपयोग करने के लिए श्रृंखला से अपने निर्मित df का सूचक चाहते हैं, तो आप निम्न कार्य कर सकते हैं: df.merge (pd.DataFrame (डेटा = [s.values] * len (df), स्तंभ = s.index, index = df.index), left_index = true, right_index = true) यह मानता है कि सूचकांक लंबाई से मेल खाते हैं।
Comments
Post a Comment