arrays - स्पार्क्स(स्कला) में अर्रे[अरा[फ्लोट]] के लिए रैपेडअरे[रैपेडएरे[फ्लोट]] को कैसे डालना




scala casting (2)

स्पार्क 2.0 का उपयोग करते हुए I मेरे पास मेरे WrappedArray का एक स्तंभ है जिसमें रैपेडअरेज़ ऑफ़ फ्लोट के WrappedArray हैं I

एक पंक्ति का एक उदाहरण होगा:

[[1.0 2.0 2.0][6.0 5.0 2.0][4.0 2.0 3.0]]

मैं इस कॉलम को एक Array[Array[Float]] में बदलने की कोशिश कर रहा Array[Array[Float]]

मैंने अभी तक जो कोशिश की वह निम्नलिखित है:

dataframe.select("mycolumn").rdd.map(r => r.asInstanceOf[Array[Array[Float]]])

लेकिन मुझे निम्न त्रुटि मिलती है:

Caused by: java.lang.ClassCastException:
 org.apache.spark.sql.catalyst.expressions.GenericRowWithSchema cannot be cast to [[F

किसी भी विचार की अत्यधिक सराहना की जाएगी धन्यवाद


इसे इस्तेमाल करे:

  val wawa: WrappedArray[WrappedArray[Float]] = null 
  val res: Array[Array[Float]] = wawa.map(inner => inner.array).toArray

यह मेरे लिए संकलित है


@ सामी-बदावी के उत्तर के बाद मैं उन लोगों के लिए उत्तर पोस्ट कर रहा हूं जो मेरे डेटाफ्रेम से शुरू हुए थे।

dataframe.select("mycolumn").rdd.map
(row => row.get(0).asInstanceOf[WrappedArray[WrappedArray[Float]]].array.map(x=>x.toArray))




apache-spark-2.0