①二维数据转一维(当年做论文数据分析的时候如果就知道这个多好)
importpandasaspddata1=pd.read_excel(二维变一维.xlsx,index_col=0)#index_col用来设置索引列data1data2=data1.reset_index()data2#pandas.melt(frame,id_vars=None,value_vars=None,var_name=None,value_name=value,col_level=None)#frame:要处理的数据集;#id_vars:不需要被转换的列名;#value_vars:需要转换的列名,如果剩下的列全部都要转换,就不用写了;#var_name和value_name是自定义设置对应的列名;#col_level:如果列是MultiIndex,则使用此级别。data3=data2.melt(id_vars=index,var_name=year,value_name=stu_num)data3data4=data3.set_index(index)data4print(data4)data4.to_excel(转换后表格.xlsx)#大功告成,上述代码可以用1行代码搞定:data=data.reset_index().melt(index,var_name=col).set_index(index)
转换前:转换后:
②一维数据转二维(具有把多行数据汇总的优点,一对多转为一对一),这个功能数据透视表好像也能做到哈哈哈
同事噔噔蹬手工在粘,看不下去的我。
importpandasaspddata1=pd.read_excel(一维变二维.xlsx,index_col=0)#index_col用来设置索引列#print(data1)data2=data1.reset_index()data2#print(data2)df=data2.pivot(index=姓名,columns=姓名2,values=姓名2)df=df.reset_index()print(df)df.fillna("",inplace=True)dfprint(df)df.to_excel(转换后表格.xlsx)
转换前:
转换后:
预览时标签不可点收录于话题#个上一篇下一篇