多个list合成一个dataframe

#定义空的list存放每次循环的表
ls=[]
#对不同时间做循环
for t in testdata['Time'].drop_duplicates():
    #给定时间条件
    tmp = testdata[testdata['Time']==t]
    #提取这一时刻出现的所有ID([[]]才会生成表格)
    tmp1=tmp[['ID']]
    #设定临时列
    tmp1['tmp']=1
    #做表连接,生成两两之间的对应表
    tmp1=pd.merge(tmp1,tmp1,on = ['tmp'])
    #只保留这个表的一半
    tmp1 = tmp1[tmp1['ID_x']>tmp1['ID_y']]
    #把其他信息连接到对应表上
    tmp.columns = ['ID_x','Time_x','lon_x','lat_x']
    tmp1 = pd.merge(tmp1,tmp,on='ID_x')
    tmp.columns = ['ID_y','Time_y','lon_y','lat_y']
    tmp1 = pd.merge(tmp1,tmp,on='ID_y')
    #删除多余的列,重命名列
    tmp1 = tmp1.drop(['tmp','Time_y'],axis = 1).rename(columns={'Time_x':'Time'})
    ls.append(tmp1)
#最后合并表
pd.concat(ls)   #多个list合成一个dataframe
ls
上一篇:jsp的内置对象,作用域和简单介绍servlet


下一篇:Servlet 实现文件上传和下载笔记