我正在使用getDouble(0),其中索引0處的值爲「2」。我的假設是該字符串將轉換爲Double,但我得到一個字符串不能轉換爲Double錯誤。 getDouble如果不是將索引中的值轉換爲Double,應如何使用?什麼是首選方式 - getString(0).toDouble
?spark:Row getDouble方法的解釋
0
A
回答
2
你2
在該領域的String
,而不是Double
:
val df = Seq((2.0, "2")).toDF("A", "B")
// df: org.apache.spark.sql.DataFrame = [A: double, B: string]
這給了錯誤,因爲該行的第二個元素是一個字符串:
df.first().getDouble(1)
// java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Double
// at scala.runtime.BoxesRunTime.unboxToDouble(BoxesRunTime.java:114)
// at org.apache.spark.sql.Row$class.getDouble(Row.scala:242)
// at org.apache.spark.sql.catalyst.expressions.GenericRow.getDouble(rows.scala:192)
// ... 48 elided
雖然這工作正常:
df.first().getString(1).toDouble
// res4: Double = 2.0
相關問題
- 1. spark:row to element
- 2. Windows.UI.Xaml.Application.Start方法解釋
- 3. 解釋DrawArc方法?
- 4. 解釋ExtJs的loadRecord方法
- 5. 方法AST的解釋
- 6. 橋方法的解釋
- 7. 請解釋這個方法
- 8. 方法解釋參數
- 9. 解釋方法Body.ExceptionHandlingClauses集合
- 10. 請解釋worksheet.add方法
- 11. 請解釋課程方法
- 12. 對泛型的CompareTo方法的解釋
- 13. 接受列表的方法解釋AntiXSS
- 14. Ruby的因子方法解釋
- 15. 約GetPostBackEventReference方法更詳細的解釋
- 16. 特定方法的疑惑,請解釋
- 17. 請解釋使用Option的orNull方法
- 18. 解釋jQuery的AJAX成功方法
- 19. 忽略php解釋器的方法
- 20. 用註解註釋的方法的方面,用另一個註釋註釋
- 21. 語法解釋
- 22. 語法解釋
- 23. 請解釋這種比較方法
- 24. 有人可以解釋toString()方法
- 25. SableCC沒有打翻解釋方法
- 26. 請解釋以下C++方法
- 27. C#正則表達式方法解釋
- 28. 解釋掃描儀關閉()方法Java
- 29. 幫助解釋一個C++方法
- 30. 解釋仿製藥這種方法
請注意'toDouble'不是演員; 'asInstanceOf [Double]'是(並且'String'永遠不能轉換爲'Double')。 –