Python,如何导入具有垂直堆叠列标题、@relation、@attribute、@data 的数据集?

tar*_*ING 0 csv dataset arff pandas

我正在尝试从 timeseriesclassification.com 加载数据集,但数据集的格式是我以前从未见过的。

.csv 文件如下所示,

@relation Wine
@attribute att0 numeric
@attribute att1 numeric
@attribute target {1    2}
@data   
0,1,1
0,0,0
1,0,0
Run Code Online (Sandbox Code Playgroud)

这就是数据应该被格式化的方式。

att0,att1,target
0,1,1
0,0,0
1,0,0
Run Code Online (Sandbox Code Playgroud)

这是我目前的策略:

  1. 使用 file('filename.csv) 读取文件
  2. 计算行数直到@data 出现
  3. 删除所有标题,并使用pandas导入数据
  4. 添加新列名

有谁知道这个数据集的格式是什么?任何人都可以指向我可以引用不同数据集格式的资源。

Zer*_*ero 5

使用 Scipy'sscipy.io.arff.loadarff读取ARFF文件。

In [94]: from scipy.io.arff import loadarff

In [95]: dataset = loadarff(open('filename.csv','r'))

In [96]: df = pd.DataFrame(dataset[0], columns=dataset[1].names())

In [97]: df
Out[97]:
   att0  att1 target
0   0.0   1.0      1
1   0.0   0.0      0
2   1.0   0.0      0
Run Code Online (Sandbox Code Playgroud)