这里是一块数据集:努力理解为什么浮子()是给这个错误
18,8,307,130,3504,12,70,1,chevrolet
15,8,350,165,3693,11.5,70,1,buick
18,8,318,150,3436,11,70,1,plymouth
16,8,304,150,3433,12,70,1,amc
17,8,302,140,3449,10.5,70,1,ford
15,8,429,198,4341,10,70,1,ford
14,8,454,220,4354,9,70,1,chevrolet
14,8,440,215,4312,8.5,70,1,plymouth
这里是代码:
data = sc.textFile("hw6/auto_mpg_original.csv")
records = data.map(lambda x: x.split(","))
hp = float(records.map(lambda x: x[3]))
disp = np.array(float(records.map(lambda x: x[2])))
final_data_1 = LabeledPoint(hp, disp)
这里是错误:
Traceback (most recent call last):
File "/home/cloudera/Desktop/hw6.py", line 41, in <module>
hp = float(records.map(lambda x: x[3]))
TypeError: float() argument must be a string or a number
这似乎很基本,但我真的很难追踪到这个解决方案。
我在做出这些更改后出现同样的错误。 – madsthaks
奇怪,所以我将LabeledPoint行注释掉,然后代码运行良好。这个功能真的会引起我的问题。我遇到麻烦,理解它为什么有效并且没有。 – madsthaks
如果在同一行上出现相同的错误,我会感到惊讶,因为任何火花错误都会非常不同,并且将float()移动到地图中会导致火花错误。 – AChampion