热线电话:13121318867

登录
2019-02-17 阅读量: 840
转换数据帧和切片

该数据集占用76列并将它们放入7列,并将其他列包装到下一行。我试图弄清楚如何将该数据帧变为可读格式,如右侧的数据框所示。

在此输入图像描述

变量xyz将始终相同,但我列出的其他字母变量将不同。我以为我可以使用data.loc [:,:'xyz']开始,但我不知道从哪里开始:

data = pd.read_csv("../resources/cleveland.data")
data.loc[:, :
'xyz']

然后我必须从那里开始为这些变量分配列名。令人惊讶的是,一旦我解决了这个问题,火车,测试,验证部分将更加容易。

解决办法:使用numpy此,形成所有值的一个大阵后。np.array_split+ np.where之后的组合拆分指数xyz:

样本数据: test.csv

1,a,b,c,d,e,f,g

h,i,j,k,xyz,2,a,b

c,d,e,f,g,h,i,j

k,xyz

import numpy as np

import pandas as pd

arr = pd.read_csv('test.csv', header=None).values.ravel()

pd.DataFrame(np.array_split(arr, np.where(arr == 'xyz')[0]+1)).dropna(how='all')

输出:

0 1 2 3 4 5 6 7 8 9 10 11 12

0 1 a b c d e f g h i j k xyz

1 2 a b c d e f g h i j k xyz

0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子