Python 读取非结构化数据
我有excel中的数据集,它没有一个很好的表格格式。以下是示例:Python 读取非结构化数据,python,pandas,Python,Pandas,我有excel中的数据集,它没有一个很好的表格格式。以下是示例: Country Male Female 2010 2011 2012 2013 2014 2010 2011 2012 2013 2014 AFG 182 134 94 87 85 120 150 95 75 92 BLZ 200
Country Male Female
2010 2011 2012 2013 2014 2010 2011 2012 2013 2014
AFG 182 134 94 87 85 120 150 95 75 92
BLZ 200 250 150 125 45 210 140 125 101 21
我想用Python读取这些数据,并将其放入pandas数据框中,如:
Country Year Male Female
AFG 2010 182 120
...
在Python/Pandas中,有没有办法在不操纵原始数据集的情况下实现这一点
您可以在此处调整示例数据集:
感谢熊猫原生excel阅读器选项提供的解决方案 在这里找到了技术: 其中:
Country Male Female
1990 2000 2010 2015 2016 1990 2000 2010 2015 2016
AFG Afghanistan 127.0000 96.5000 70.0000 58.7000 56.9000 113.2000 84.7000 61.2000 50.8000 49.2000
ALB Albania 38.1000 25.5000 16.4000 13.7000 13.3000 31.0000 20.6000 13.2000 11.1000 10.7000
DZA Algeria 45.0000 36.7000 24.9000 23.2000 22.9000 37.5000 31.1000 22.0000 20.5000 20.2000
AND Andorra 8.0000 4.3000 3.2000 2.7000 2.7000 6.6000 3.7000 2.7000 2.3000 2.3000
AGO Angola 140.6000 132.7000 82.4000 62.5000 60.0000 120.9000 112.8000 68.0000 51.0000 49.0000
要完成所需的布局,请使用stack()
df.stack()
您能够将excel文件加载到数据框中吗?下面是链接:您可能想要签出某种类型的数据。你可以在?上找到帮助?。这里的简短回答可能是:是的-这可以通过一些代码来完成。但是,如果原始数据集是一次性加载的,那么它可能会更快地处理原始数据集。如果它将是一个恒定的负载,那么可能需要花费一些时间来获得正确的代码。这个答案比我的答案要好得多:)
Country Male Female
1990 2000 2010 2015 2016 1990 2000 2010 2015 2016
AFG Afghanistan 127.0000 96.5000 70.0000 58.7000 56.9000 113.2000 84.7000 61.2000 50.8000 49.2000
ALB Albania 38.1000 25.5000 16.4000 13.7000 13.3000 31.0000 20.6000 13.2000 11.1000 10.7000
DZA Algeria 45.0000 36.7000 24.9000 23.2000 22.9000 37.5000 31.1000 22.0000 20.5000 20.2000
AND Andorra 8.0000 4.3000 3.2000 2.7000 2.7000 6.6000 3.7000 2.7000 2.3000 2.3000
AGO Angola 140.6000 132.7000 82.4000 62.5000 60.0000 120.9000 112.8000 68.0000 51.0000 49.0000
Country Female Male
AFG Afghanistan 1990 113.2000 127.0000
2000 84.7000 96.5000
2010 61.2000 70.0000
2015 50.8000 58.7000