分享

根据字段不同类型做数据筛选处理

zeus_lhl 发表于 2017-7-19 00:29:26 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 9 6603
10000个字段,各种类型的都有,字段类型分布也是乱的,怎么才能把需要的类型跳出来处理呢
比如有的字段是连续的float类型,有的是字符串,有的是int型
挑出来进行离散化,归一化,统一最终输入模型的数据类型


已有(9)人评论

跳转到指定楼层
sstutu 发表于 2017-7-19 08:23:06
有两个问题
1.字段下的数据是否是规则的,如字段是int型的,下面是否有字符串的。
2.这个挑出来,是指挑哪些内容。
回复

使用道具 举报

yuwenge 发表于 2017-7-19 08:29:24
对于需要的类型,做一下判断,并且记录下来。
回复

使用道具 举报

zeus_lhl 发表于 2017-7-19 09:40:16
sstutu 发表于 2017-7-19 08:23
有两个问题
1.字段下的数据是否是规则的,如字段是int型的,下面是否有字符串的。
2.这个挑出来,是指挑 ...

1. 一个字段只有一种类型
2. 挑出来不同的类型数据字段,一起做处理(不知道怎么挑--语句)

回复

使用道具 举报

yuwenge 发表于 2017-7-19 09:42:47
zeus_lhl 发表于 2017-7-19 09:40
1. 一个字段只有一种类型
2. 挑出来不同的类型数据字段,一起做处理(不知道怎么挑--语句)

是数据库?还是文件?
回复

使用道具 举报

zeus_lhl 发表于 2017-7-19 09:44:37
yuwenge 发表于 2017-7-19 09:42
是数据库?还是文件?

已经提取到pandas的DataFrame里了
回复

使用道具 举报

yuwenge 发表于 2017-7-19 09:58:47
zeus_lhl 发表于 2017-7-19 09:44
已经提取到pandas的DataFrame里了

在获取DataFrame之前,最好过滤下。这样可以提高性能。
可以循环字段,然后获取字段类型,这
for (int i = 1; i <= data.getColumnCount(); i++) {

// 获得指定列的列名
String columnName = data.getColumnName(i);

// 获得指定列的数据类型名
String columnTypeName = data.getColumnTypeName(i);

//然后做自己的业务
}
回复

使用道具 举报

zeus_lhl 发表于 2017-7-19 10:00:40
yuwenge 发表于 2017-7-19 09:58
在获取DataFrame之前,最好过滤下。这样可以提高性能。
可以循环字段,然后获取字段类型,这
for (int  ...

哥 可以换成python写吗,我想用python,但不知道怎么写,比如获取字段名称,判断类型

回复

使用道具 举报

yuwenge 发表于 2017-7-19 10:39:16
zeus_lhl 发表于 2017-7-19 10:00
哥 可以换成python写吗,我想用python,但不知道怎么写,比如获取字段名称,判断类型

df_obj = DataFrame() #创建DataFrame对象
df_obj.columns #查看列名

df_obj.dtypes #df_obj.dtypes #查看各行的数据格式,如果多列,可以循环
上面这个可以试试。


回复

使用道具 举报

zeus_lhl 发表于 2017-7-24 09:57:48
yuwenge 发表于 2017-7-19 09:58
在获取DataFrame之前,最好过滤下。这样可以提高性能。
可以循环字段,然后获取字段类型,这
for (int  ...

您说的过滤是怎么过滤?还有一种情况,不同类型的数据,比如int64,下面既有离散型,也有连续性;float64也一样。说白了,就是即使同一类型下的数据,也是有离散和连续之分。这样比如我有10000个维度,甚至上百万个维度,该怎么处理呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条