>>> a
DataFrame[id: bigint, julian_date: string, user_id: bigint]
>>> b
DataFrame[id: bigint, quan_created_money: decimal(10,0), quan_created_cnt: bigint]
>>> a.join(b, a.id==b.id, 'outer')
DataFrame[id: bigint, julian_date: string, user_id: bigint, id: bigint, quan_created_money: decimal(10,0), quan_created_cnt: bigint]
दो id: bigint
हैं और मैं एक को हटाना चाहता हूं। मैं कैसे कर सकता हूँ?pyspark डेटाफ्रेम में कॉलम को कैसे हटाएं
मुझे लगता है कि मुझे जवाब मिल गया है। तारों की सूची न लेने के लिए स्ट्रिंग्स की एक सूची लेने की जरूरतों का चयन करें। तो ऐसा करें: 'रखना = [सी के लिए c.columns में सी] + [सी के लिए सी c.columns में सी! = 'आईडी']' 'डी = a.join (बी, a.id = = बी.आईडी, 'बाहरी')। चुनें (* रखें) ' – deusxmach1na
ठीक है, यह मेरे उत्तर के समान ही काम करना चाहिए, क्योंकि मुझे पूरा यकीन है कि 'चयन' स्ट्रिंग या कॉलम स्वीकार करता है (https: // spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.DataFrame)। बीटीडब्ल्यू, आपकी लाइन में 'रखें = ...' 'a' के लिए सूची समझ का उपयोग करने की कोई आवश्यकता नहीं है:' a.columns + [c c.c.cumnumns में c c c = = id '] को प्राप्त करना चाहिए सटीक वही बात, क्योंकि 'a.columns' पहले से तारों की' सूची 'है। – karlson
@ deusxmach1na असल में तारों के आधार पर कॉलम चयन ओपी के लिए काम नहीं कर सकता है, क्योंकि यह 'आईडी' कॉलम की अस्पष्टता को हल नहीं करेगा। उस स्थिति में आपको 'चयन' में' कॉलम 'उदाहरणों का उपयोग करना होगा। – karlson