一. 将数据格式转换为libsvm

用libsvm分析数据,首先要把csv格式的数据转换成libsvm格式,网上搜到的方法如下:

1. 网上有一个xls文FormatDataLibsvm.xls具有宏命令,可以利用其中的宏命令来实现。对于属性数据只有一二百的,这种工具简单方便。

2. 可以利用weka来转换,用weka打开csv文件,再将文件重新保存为libsvm格式。

由于我的数据有180万左右,所以使用了第二种方法。去weka官网下载最新版本,我的是weka-3-9-2-oracle-jvm,转换前需要提前下载libsvm的包。打开GUI界面,点击tools下的package manager,按如下界面搜索并下载。

然后就可以转换了数据了。需要注意的是,保存时有可能没有存为.libsvm的选项,这是因为数据格式只能是numerical或者nominal,修改或移除之后就可以了。

二. Mac电脑配置python(PyCharm)的libsvm

1. 首先下载libsvm.zip文件

2. unzip一下libsvm.zip文件,用终端进入libsvm文件夹

3. 输入make

4. 进入libsvm下的python文件夹

5. make一次libsvm->python文件夹  ,上层文件夹会出现一个libsvm.so.2文件

现在已经编译好libsvm了,值得注意的是:libsvm.so.2是unix系统所需要的链接库,而且存在于python上一个文件夹中(即libsvm主文件夹中,而且在svmutil.py中引用libsvm.so.2时,都是看做在上一个目录下进行引入的)

6. 进入系统所使用的python的site-packages文件夹,将libsvm.so.2复制到site-packages文件夹中(本机为/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages)

7. 在该文件夹下建立文件夹libsvm,进入libsvm文件夹,新建__init__.py文件(这一步十分重要,因为libsvm.so.2在上一层文件夹中,因此该libsvm文件夹将会被看做一个python工作区,而__init__.py对于python工作区来说是必须的)

8. 将libsvm->python文件夹下的svm.py、svmutil.py都复制到这个新建的libsvm文件夹中。

按道理说,这样就成功了,但是当我用PyCharm运行from libsvm import svmutil时,出现了如下问题:ModuleNotFoundError: No module named 'svm'

查看svmutil.py,发现有如下代码:from svm import *

from svm import __all__ as svm_all

因为当前路径不在系统路径下,编译器不知道去哪里找svm.py,所以修改上述代码为:from libsvm.svm import *

from libsvm.svm import __all__ as svm_all

就可以用from libsvm.svmutilimport *运行啦。

三、一个简单例子

这里使用了一个最简单的栗子。from libsvm.svmutil import *

y,x=svm_read_problem('train.libsvm')  # 训练数据

yt,xt=svm_read_problem('test.libsvm')  # 测试数据

m = svm_train(y[:37000], x[:37000])  # 使用前37000个数据训练

p_label,p_acc,p_val=svm_predict(y[-1700:],x[-1700:],m)  # 使用后1700个数据测试

libsvm python_python 使用libsvm分析数据相关推荐

  1. App性能分析数据监控

    App性能分析数据监控 APP的性能监控包括: CPU 占用率.内存使用情况.网络状况监控.启动时闪退.卡顿.FPS.使用时崩溃.耗电量监控.流量监控等等. 文中所有代码都已同步到github中,有兴 ...

  2. 命名管道 win7未响应_大数据分析Python建立分析数据管道

    如果您曾经想通过流数据或快速变化的数据在线学习Python,那么您可能会熟悉数据管道的概念.数据管道允许您通过一系列步骤将数据从一种表示形式转换为另一种表示形式.数据管道是数据工程的关键部分,我们将在 ...

  3. 网站分析数据收集方式详解

    回顾网站数据分析历史,从"您是第***位来访用户"到现在百家齐放的专业工具提供商,网站分析已经逐渐发展衍化成一门科学.但面对形态各异的分析数据,很多人仍然困惑于数据的来源,了解数据 ...

  4. Wireshark数据抓包教程之认识捕获分析数据包

    Wireshark数据抓包教程之认识捕获分析数据包 认识Wireshark捕获数据包 当我们对Wireshark主窗口各部分作用了解了,学会捕获数据了,接下来就该去认识这些捕获的数据包了.Wiresh ...

  5. 基于100,000篇演讲的分析数据科学家发现了最佳演讲者的特征——及时解释听众不懂的词语,必要时提高10%的音调,正确和恰当的手势,氛围的营造...

    [TD精选] 基于100,000篇演讲的分析数据科学家发现了最佳演讲者的特征 相信大部分人一定试图寻找过使得自己的演讲变得更加吸引人,更加有气势的方法.现如今,在大数据工具和机器学习技术的辅助下,找到 ...

  6. 新秀nginx源代码分析数据结构篇(四)红黑树ngx_rbtree_t

    新秀nginx源代码分析数据结构篇(四)红黑树ngx_rbtree_t Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.csd ...

  7. 分析数据时,一定要避开这5大误区!

    不论是数分.产品.运营.市场,在做数据分析时,都会不免踏入一些"误区". 轻则影响工作效率,重则延误项目进展,甚至还会连累到自己的职业生涯. 以下几点错误,都是我从身边的真实案例总 ...

  8. [渗透攻防] 四.详解MySQL数据库攻防及Fiddler神器分析数据包

    这是最近学习渗透和网站攻防的基础性文章,前面文章从数据库原理解读了防止SQL注入.SQLMAP的基础用法.数据库差异备份.Caidao神器.这篇文章将详细讲解MySQL数据库攻防知识,有点类似第一篇文 ...

  9. python连接中控考勤机分析数据

    用python连接中控考勤机. 下载并分析数据,把结果邮件给人事. 中控SDK包: x32地址 x64地址 SDK包建议用32位的,在win7 64位系统上用64位开发包不行,用32可以. pytho ...

最新文章

  1. python3: print()函数:def,end关键字介绍
  2. Swift基础之闭包
  3. linux逻辑盘大小,linux – 物理和逻辑盘区大小
  4. BZOJ3029守卫者的挑战(概率dp)
  5. php 精度计算问题
  6. php移动代码,移动专区周级收录如何提交 复制这段php代码即可
  7. 借助财务客户评估解决方案在云中构建AppDev
  8. js Ajax跨域访问
  9. 大数据 深度 分页_机器学习、深度学习、大数据 ?傻傻分不清楚?
  10. 电脑系统如何锁定计算机,如何删除“解除计算机锁定”页面?
  11. 怎么看表_怎么和爸妈沟通?
  12. 开发是在什么部门办理_房产证办理流程是什么?办理房产证需要缴纳哪些费用?...
  13. Codeforces Round #469 (Div. 2) F. Curfew (贪心)
  14. 4G模块SIM7600绑定AT指定串口号(二)
  15. 华为手机自带浏览器不支持 ES6 语法
  16. JVM-详解G1垃圾收集器
  17. 央行数字货币研究所与农信银资金清算中心合作推进数字人民币应用
  18. 解决口袋动画产生的片头动画无法使用powerpoint导出成视频的问题
  19. JavaEye五月刊记录
  20. 【笔记】网易微专业-Web安全工程师-01.WEB基础知识

热门文章

  1. ES7之async,await
  2. 服务器电源支持冗余是什么意思,冗余电源是什么意思
  3. 使用nano时怎么保存退出的问题
  4. java中const_Java如何实现const
  5. Tribon图纸中Symbols符号的解析
  6. c语言 字符型变量,C语言中字符型变量与整型变量的联系
  7. Google Chrome 背后的天才 1
  8. 同相比造句_对比造句_造句大全
  9. 网站注册信息的JS全码
  10. Cortex-A7中断详解(三)