import pandas as pd
import numpy as np
data=pd.read_csv('result1.csv',encoding='gbk')
for i in range(0,30):
if i%3==0:
data1=np.array(data)
datas=data1[int(i):int(i+3),]
datanew=pd.DataFrame(datas)
datanew.head(4)
datanew.columns=['','frequency','price','name']
df=pd.DataFrame(datanew)
datanew2=df.sort_values(by=('price'))
datanew2.to_csv('C:/Users/HP/Desktop/python_work/result6.csv',encoding='gbk')
print(datanew2)
continue
结果图片
按你的程序逻辑,你最后写入 csv 时,就是最新的dataframe ,以前的都被覆盖了。
这样改一下, 应该能得到你要结果
import pandas as pd
import numpy as np
data=pd.read_csv('result1.csv',encoding='gbk')
#初始化要写入的数据
data1=np.array(data)
datas=data1[int(0):int(0+3),]
datanew=pd.DataFrame(datas)
datanew.head(4)
datanew.columns=['','frequency','price','name']
df=pd.DataFrame(datanew)
data_save=df.sort_values(by=('price'))
# 追加数据
for i in range(1,30):
if i%3==0:
data1=np.array(data)
datas=data1[int(i):int(i+3),]
datanew=pd.DataFrame(datas)
datanew.head(4)
datanew.columns=['','frequency','price','name']
df=pd.DataFrame(datanew)
datanew2=df.sort_values(by=('price'))
# datanew2.to_csv('C:/Users/HP/Desktop/python_work/result6.csv',encoding='gbk')
data_save = pd.concat([data_save,datanew2],axis=0,ignore_index=True)
print(datanew2)
continue
# 保存数据
data_save.to_csv('C:/Users/HP/Desktop/python_work/result6.csv',encoding='gbk')