这篇文章主要讲解了“怎么用python把二维表格转成一维表格”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用python把二维表格转成一维表格”吧!
首先按照传统的方式读表格:
import pandas as pd data1 = pd.read_excel('高中生数量.xlsx') data1
发现索引列没有被识别,产生了Unnamed: 0列,所以我们应该把第一列设置为索引列,代码如下:
import pandas as pd data1 = pd.read_excel('高中生数量.xlsx',index_col=0) #index_col用来设置索引列data1
这样就正常读取并识别表格了
这一步主要是将索引列重置,变为普通列,便于下步,代码如下
data2=data1.reset_index() data2
可以发现,之前的索引列编程‘index’列了
这一步主要用到pandas的melt函数,melt是逆转操作函数,可以将列名转换为列数据(columns name → column values),重构DataFrame,用法如下:
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,则使用此级别。
我们把'index'列保留,并把转换后的列命名为'year',value命名为'stu_num':
data3=data2.melt(id_vars='index', var_name='year',value_name='stu_num') data3
为了防止保存后的表格带有数字索引,需要把第一列设置为索引列:
data4=data3.set_index('index') data4
data4.to_excel('转换后表格.xlsx')
大功告成,上述代码可以用1行代码搞定:
data=data.reset_index().melt('index', var_name='col').set_index('index')
感谢各位的阅读,以上就是“怎么用python把二维表格转成一维表格”的内容了,经过本文的学习后,相信大家对怎么用python把二维表格转成一维表格这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。