pyspark数据准备

鸢尾花数据集

1 5.1,3.5,1.4,0.2,Iris-setosa
2 4.9,3.0,1.4,0.2,Iris-setosa
3 4.7,3.2,1.3,0.2,Iris-setosa
4 4.6,3.1,1.5,0.2,Iris-setosa
5 5.0,3.6,1.4,0.2,Iris-setosa
6 5.4,3.9,1.7,0.4,Iris-setosa
7 4.6,3.4,1.4,0.3,Iris-setosa
8 5.0,3.4,1.5,0.2,Iris-setosa

转换成libsvm格式代码

复制代码
 1 import sys
 2 
 3 file = sys.argv[1]
 4 
 5 def main():
 6     with open(file,'r') as df:
 7         for line in df:
 8             ss = line.strip().split(",")
 9             if ss[4]=="Iris-setosa":
10                 ss[4]=0
11             if ss[4]=="Iris-versicolor":
12                 ss[4]=1
13             if ss[4]=="Iris-virginica":
14                 ss[4]=2
15             print("%d 1:%.1f 2:%.1f 3:%.1f 4:%.1f"%(ss[4],float(ss[0]),float(ss[1]),float(ss[2]),float(ss[3])))
16 if __name__ == '__main__':
17     try:
18         main()
19     except Exception as e:
20         raise e
复制代码

libsvm格式的鸢尾花数据集

复制代码
 1 0 1:5.1 2:3.5 3:1.4 4:0.2
 2 0 1:4.9 2:3.0 3:1.4 4:0.2
 3 0 1:4.7 2:3.2 3:1.3 4:0.2
 4 0 1:4.6 2:3.1 3:1.5 4:0.2
 5 0 1:5.0 2:3.6 3:1.4 4:0.2
 6 0 1:5.4 2:3.9 3:1.7 4:0.4
 7 0 1:4.6 2:3.4 3:1.4 4:0.3
 8 0 1:5.0 2:3.4 3:1.5 4:0.2
 9 0 1:4.4 2:2.9 3:1.4 4:0.2
10 0 1:4.9 2:3.1 3:1.5 4:0.1
11 0 1:5.4 2:3.7 3:1.5 4:0.2
复制代码

pyspark读取libsvm格式数据并转换

复制代码

>>> from pyspark.mllib.util import MLUtils
>>> examples = MLUtils.loadLibSVMFile(sc, "data/mllib/sample_libsvm_data.txt")

 >>> examples.take(2)
 [Stage 26:>                                                         (0 + 1) / 1]

 [LabeledPoint(0.0, (4,[0,1,2,3],[5.1,3.5,1.4,0.2])), LabeledPoint(0.0, (4,[0,1,2
 ,3],[4.9,3.0,1.4,0.2]))]

 
复制代码

 

posted on   NothingLZ  阅读(347)  评论(0编辑  收藏  举报

编辑推荐:
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
阅读排行:
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
· 软件产品开发中常见的10个问题及处理方法

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示