我正在使用Spark ALS算法来提出建议,它要求用户和产品字段为整数。我将这些数据作为带有字符串的CSV引入这些字段。在从算法中为每个用户生成输出后,将这些转换为整数然后再返回的最简单方法是什么。输出格式为:
[评级(用户= 16,产品= 7,评级= 0.9847078722254077),评级(用户= 16,产品= 19,评级= 0.9756248870987353)]
答案 0 :(得分:0)
由于我们不知道数据的格式,我们假设您可以一次转换一个数字,例如k是您的数字字符串。
>>> k = '15'
>>> type (k)
<type 'str'>
>>> j = int(k)
>>> type (j)
<type 'int'>
>>> z = str(j)
>>> type(z)
<type 'str'>
>>> (k,j,z)
('15', 15, '15')
答案 1 :(得分:0)
最简单的方法是让pandas读取csv文件;它会自动将数字字段转换为数字。由于您不必做任何事情,除非您想覆盖某些列的默认类型,否则很难被击败。
df = pd.DataFrame.from_csv("products.csv")
您也可以使用df.to_csv()
来记录您的数据,从而撤消此过程。