在特征工程中选择数据失败是什么原因?

举报
就挺突然 发表于 2021/06/07 22:10:22 2021/06/07
【摘要】 特征工程选择数据失败可能是文件太大、不止一个文件、非文本文件、目录层次较深,如果选择数据执行失败可以分析一下原因,然后修改一下生成的代码去处理;1) 文件太大需要修改一下选择数据生成的代码,可以先做一个sample,然后读取sample后的数据,样例代码如下:from naie.datasets import data_reference, save_dataset_entit...

特征工程选择数据失败可能是文件太大、不止一个文件、非文本文件、目录层次较深,如果选择数据执行失败可以分析一下原因,然后修改一下生成的代码去处理;

1) 文件太大

需要修改一下选择数据生成的代码,可以先做一个sample,然后读取sample后的数据,样例代码如下:

from naie.datasets import data_reference, save_dataset_entity

import pandas as pd
dataset = 'beijing' #@param {"type":"string","label":"数据集","required":true,"asyncConfig":{"type":"dataset"},"hyperParamType":"inDataset"}
dataset_entity = 'health' #@param {"type":"string","label":"数据集实例","required":true,"asyncConfig":{"type":"data","params":{"dataset":{"key":"dataset"}}},"hyperParamType":"inData"}
is_time_series = False #@param {"type":"boolean","label":"是否为时序数据"}
time_column = None #@param {"type":"string","label":"时间列","show":{"key":"is_time_series"},"required":true}
time_format = None #@param {"type":"string","label":"时间格式","options":[{"text":"自动解析","value":"\\None"},"timestamp(D)","timestamp(s)","timestamp(ms)","timestamp(us)","timestamp(ns)"],"show":{"key":"is_time_series"}}
id_column = None #@param {"type":"string","label":"ID列","show":{"key":"is_time_series"}}
do_analysis = False #@param {"type":"boolean","label":"是否检测周期与平稳性","helpTip":"开启后执行时间较长","show":{"key":"is_time_series"},"advanced":true}
attrs = {'is_time_series': is_time_series, 'time_column': time_column, 'time_format': time_format, 'id_column': id_column, "do_analysis": do_analysis}
datareference = data_reference.get_data_reference(dataset, dataset_entity, attrs=attrs) #@return {"variableType":"datareference","label":"数据引用变量名","attrs":{"dataset":{"key":"dataset"},"dataset_entity":{"key":"dataset_entity"},"attrs":{"key":"attrs"}},"helpTip":"当存在多个数据引用时,可重命名数据引用对象的变量名以避免冲突","required":true,"advanced":true}
datareference.download_dataset() # 将数据集文件下载到镜像本地
 
rows = 10000#@param {"type":"int","label":"采样行数","show":{"key":"rows"}}
df = pd.read_csv(datareference.get_local_path_file_list()[0],nrows=rows) # 采样10000行数据
new_dataset = 'beijing' #@param {"type":"string","label":"新数据集","required":true,"asyncConfig":{"type":"dataset"},"hyperParamType":"inDataset"}
new_dataset_entity = 'health_new' #@param {"type":"string","required": true,"label":"新数据实例名称","show":{"key":"new_dataset_entity"}}
data_reference.save_dataset_entity(new_dataset,new_dataset_entity,dataframe=df) # 创建一个新的数据集实例health_new

2) 不止一个文件、目录层次较深

当前可以通过获取路径然后拼接的方式获取文件的完整路径,后面支持在界面选择文件。

from naie.datasets import get_data_reference
data_reference = get_data_reference(dataset="air", dataset_entity="air_20181112")
file_paths = data_reference.get_files_paths()

通过file_paths来进行拼接;

3) 非文本文件

需要自己代码来处理,文件路径可以通过data_reference.get_files_paths()获取;

文章来源: zhuanlan.zhihu.com,作者:网络人工智能园地,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/377412441

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。