के साथ एक से अधिक कॉलम का नाम बदलें, मैं कॉलमरनामयुक्त फ़ंक्शन के साथ स्पार्क का उपयोग करके दो कॉलम के नाम बदलना चाहता हूं। बेशक, मैं लिख सकते हैं:पायस्पार्क - कॉलमरेनामेड
data = sqlContext.createDataFrame([(1,2), (3,4)], ['x1', 'x2'])
data = (data
.withColumnRenamed('x1','x3')
.withColumnRenamed('x2', 'x4'))
लेकिन मैं (होने नए नामों की सूची/टपल) एक ही चरण में ऐसा करना चाहते हैं। दुर्भाग्य से, न तो इस:
data = data.withColumnRenamed(['x1', 'x2'], ['x3', 'x4'])
है और न ही इस:
data = data.withColumnRenamed(('x1', 'x2'), ('x3', 'x4'))
काम कर रहा है। क्या ऐसा इस तरह से करना संभव है?
मैं "str प्रतिदेय त्रुटि नहीं है": data.select ([col (ग) .alias (mapping.get (ग, ग)) data.columns में ग के लिए]) लेखन त्रुटि: 'str' ऑब्जेक्ट कॉल करने योग्य नहीं है –