PerformanceWarning: DataFrame is highly fragmented. This is usually the result of calling frame.inse

对DataFrame的数据进行添加时,数据量过多而造成的,虽然结果还是有的,但是一直报错,很烦

问题代码:

data = pd.read_table('D:/1wangyong\pytorchtrains\zhengqi_train01.txt')
res = []
res01 = []
data01 = {}
data02 = {}
for key in data:
    res.append(key)
for i in range(0,len(res)-2):
    data[res[i]+"+"+res[i+1]] = data[res[i]]+data[res[i+1]] #代码报错的点

代码所示,我想做机器学习训练的时候,简单做一下数据增强,就直接搞了一个for循环,因为数据量过大显示出错

解决方法如下

1、先用新的字典把数据增强部分的数据存储到新的字典

data02 = {}
for i in range(0,len(res)-2):
    data02[res[i]+"*"+res[i+1]] = data[res[i]]*data[res[i+1]]

2、将字典转换成DataFrame 

data03 = pd.DataFrame(data02)

3、合并各个DataFrame 

data = pd.concat([data,data03],axis=1)

4、检查结果

for key in data:
    res01.append(key)
print(res01)

 

你可能感兴趣的:(机器学习,python,人工智能)