使用pandas将numpy中的数组数据保存到csv文件的方法

时间:2021-05-22

接触pandas之后感觉它的很多功能似乎跟numpy有一定的重复,尤其是各种运算。不过,简单的了解之后发现在数据管理上pandas有着更为丰富的管理方式,其中一个很大的优点就是多出了对数据文件的管理。

如果想保存numpy中的数组元素到一个文件中,通过纯Python的文件写入当然是可以实现的,但是总觉得是少了一点便捷性。在这方面,pandas工具的使用就会让工作方便很多。下面通过一个简单的小例子来演示一下。

首先,创建numpy中的数组。

In [18]: arr1 = np.arange(100).reshape(10,10)In [19]: arr1Out[19]: array([[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [10, 11, 12, 13, 14, 15, 16, 17, 18, 19], [20, 21, 22, 23, 24, 25, 26, 27, 28, 29], [30, 31, 32, 33, 34, 35, 36, 37, 38, 39], [40, 41, 42, 43, 44, 45, 46, 47, 48, 49], [50, 51, 52, 53, 54, 55, 56, 57, 58, 59], [60, 61, 62, 63, 64, 65, 66, 67, 68, 69], [70, 71, 72, 73, 74, 75, 76, 77, 78, 79], [80, 81, 82, 83, 84, 85, 86, 87, 88, 89], [90, 91, 92, 93, 94, 95, 96, 97, 98, 99]])

接着,为了能够使这组数据成为可以让pandas处理的数据,需要通过这个数组创建DataFrame。

In [20]: data1 = DataFrame(arr1)

这样,就可以通过pandas中DataFrame的to_csv方法实现数据文件的存储了。具体如下:

In [21]: data1.to_csv('data1.csv')In [22]: cat data1.csv,0,1,2,3,4,5,6,7,8,90,0,1,2,3,4,5,6,7,8,91,10,11,12,13,14,15,16,17,18,192,20,21,22,23,24,25,26,27,28,293,30,31,32,33,34,35,36,37,38,394,40,41,42,43,44,45,46,47,48,495,50,51,52,53,54,55,56,57,58,596,60,61,62,63,64,65,66,67,68,697,70,71,72,73,74,75,76,77,78,798,80,81,82,83,84,85,86,87,88,899,90,91,92,93,94,95,96,97,98,99

回头看一下被存储的数据格式:

In [23]: data1Out[23]: 0 1 2 3 4 5 6 7 8 90 0 1 2 3 4 5 6 7 8 91 10 11 12 13 14 15 16 17 18 192 20 21 22 23 24 25 26 27 28 293 30 31 32 33 34 35 36 37 38 394 40 41 42 43 44 45 46 47 48 495 50 51 52 53 54 55 56 57 58 596 60 61 62 63 64 65 66 67 68 697 70 71 72 73 74 75 76 77 78 798 80 81 82 83 84 85 86 87 88 899 90 91 92 93 94 95 96 97 98 99In [24]: type(data1)Out[24]: pandas.core.frame.DataFrame

从上面的结果看一看出,转换成DataFrame的同时,数据信息增加了行列标题信息。

通过电子表格软件打开csv文件的效果如下:

以上这篇使用pandas将numpy中的数组数据保存到csv文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章