[开发技巧]·pandas如何保存numpy元素
[开发技巧]·pandas如何保存numpy元素
1.问题描述
在开发的过程中遇到一个问题,就是需要把numpy作为pandas的一个元素进行保存,注意不是作为一列元素。但是实践的过程中却不顺利,会报错,现在我解决了这个问题,并且把心得和理解分享出来,希望能帮到后来人。
2.开发实战
1.新建一些伪数据,用于保存
2.新建DataFrame进行保存并且显示
这时程序报错:
raise Exception('Data must be 1-dimensional') Exception: Data must be 1-dimensional
错误出现在df["list"] = lists,错误的原因是lists不是一维数据(Data must be 1-dimensional),为什么会出现这个问题呢?
原因在lists = np.array([l1,l2]),lists成为了二维的np.array,shape为(2,4)。
如何解决呢?需要把np.array转为list,就变为一维数据了
3.修正代码
可能会有些朋友觉得代码有些麻烦,为什么先用np.array([l1,l2])转换为np.array再用list(lists)转换为list,其实这是为了模拟真实使用场景。一般我们接触到的数据都是np.array,再保存为pandas,就会报错(Data must be 1-dimensional),解决方法就是转换为list。
numpy.array和list区别是什么呢?后面我会通过一个博客来好好阐述一下。