python - 如何将 csv 或 arff 导入到 scikit?

标签 python csv scikit-learn arff

我有两个 csv 和 arff 格式的数据集,我一直在 weka 的分类模型中使用它们。我想知道这种格式是否可以在 scikit 中使用来尝试 python 中的其他分类方法。

这就是我的数据集的样子: ASSAY_CHEMBLID...MDEN.23...MA,TARGET_TYPE...否...MA,TARGET_TYPE...apol...MA,TARGET_TYPE...ATSm5...MA,TARGET_TYPE...SCH.6。 ..MA,TARGET_TYPE...SPC.6...MA,TARGET_TYPE...SP.3...MA,TARGET_TYPE...MDEN.12...MA,TARGET_TYPE...MDEN.22... MA,TARGET_TYPE...MLogP...MA,TARGET_TYPE...R...MA,TARGET_TYPE...G...MA,TARGET_TYPE...I...MA,有机体...否... MA,有机体...C2SP1...MA,有机体...VC.6...MA,有机体...ECCEN...MA,有机体...khs.aasC...MA,有机体... MDEC.12...MA,有机体...MDEC.13...MA,有机体...MDEC.23...MA,有机体...MDEC.33...MA,有机体...MDEO。 11...MA,有机体...MDEN.22...MA,有机体...topoShape...MA,有机体...WPATH...MA,有机体...P...MA,Lij 0.202796,0.426972,0.117596,0.143818,0.072542,0.158172,0.136301,0.007245,0.016986,0.488281,0.300438,0.541931,0.644161,0.04 8149,0.02002,0,0.503415,0.153457,0.288099,0.186024,0.216833,0.184642,0,0.011592,0.00089, 0,0.209406,0

其中 Lij 是我的类(class)标识符(0 或 1)。我想知道是否需要使用 numpy 进行先前的转换。

最佳答案

要读取 ARFF 文件,您需要安装 liac-arff 。详情请参阅链接。 安装完成后,请使用以下代码读取 ARFF 文件

import arff
import numpy as np
# read arff data
with open("file.arff") as f:
    # load reads the arff db as a dictionary with
    # the data as a list of lists at key "data"
    dataDictionary = arff.load(f)
    f.close()
# extract data and convert to numpy array
arffData = np.array(dataDictionary['data'])

读取csv数据的方法有多种,我发现最简单的是使用函数 read_csv 来自Python的模块Pandas 。有关安装的详细信息,请参阅链接。 读取csv数据文件的代码如下

# read csv data
import pandas as pd
csvData = pd.read_csv("filename.csv",sep=',').values

无论哪种情况,您都会有一个包含数据的 numpy 数组。因为最后一列代表(类/目标/地面实况/标签)。您需要将数据分离到特征数组 X和目标向量y 。例如

X = arffData[:, :-1]
y = arffData[:, -1]

哪里X包含 arffData 中的所有数据除了最后一列和 y包含 arffData 中的最后一列

现在您可以使用任何 supervised learning binary classifier from scikit-learn .

关于python - 如何将 csv 或 arff 导入到 scikit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48573169/

相关文章:

java - Python - Java 的字符串列表

python - 在 Windows 上运行 Python 以获取 Node.js 依赖项

PHP 如何迭代目录并将以相同字符串结尾的所有文件合并到该名称的单个文件中

python - 如何使用新数据在 sklearn 中重新训练逻辑回归模型

python-3.x - 单列热编码

python - 分层索引的求和列?

python - 将信号从多个工作线程发送到 GUI 线程

php - mysql phpmyadmin 导入 csv 禁用舍入

regex - Tcl正则表达式检测方括号

scikit-learn - 可以使用 sklearn 对大数据文件应用在线算法吗?