首页 > 编程 > Python > 正文

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

2020-02-15 21:52:31
字体:
来源:转载
供稿:网友

接触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文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林站长站。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表