मेरे पास df
है VectorUDT
कॉलम features
नामक डेटाफ्रेम है। मैं कॉलम का तत्व कैसे प्राप्त करूं, पहला तत्व कहूं?स्पार्क डेटाफ्रेम में वेक्टरोरटी कॉलम के तत्व का उपयोग कैसे करें?
मैं निम्नलिखित
from pyspark.sql.functions import udf
first_elem_udf = udf(lambda row: row.values[0])
df.select(first_elem_udf(df.features)).show()
कर की कोशिश की है, लेकिन मैं एक net.razorvine.pickle.PickleException: expected zero arguments for construction of ClassDict(for numpy.dtype)
त्रुटि मिलती है। अगर मैं first_elem_udf = first_elem_udf(lambda row: row.toArray()[0])
करता हूं तो वही त्रुटि।
मैंने explode()
भी कोशिश की लेकिन मुझे एक त्रुटि मिली क्योंकि इसे एक सरणी या मानचित्र प्रकार की आवश्यकता है।
यह एक आम ऑपरेशन होना चाहिए, मुझे लगता है। float
को
यह मेरे लिए काम नहीं करता है। – user2205916
@ user2205916 यहां एक पुनरुत्पादित उदाहरण है। समझाने की देखभाल क्या __didn't काम नहीं है? :) – zero323
यह तब तक मेरे लिए काम नहीं करता जब तक कि मैंने 'lit (1)' '' lit (0) 'बदल दिया ... जिसे मैं आपके पुनरुत्पादित उदाहरण से अनुमान लगा सकता हूं। तो धन्यवाद! –