[開發技巧]·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區別是什么呢?后面我會通過一個博客來好好闡述一下。