前言 array,顧名思義,數組,就是存儲數字、處理數字的一種數據結構。今天在將list轉換為array時,遇到了一個問題,數據量比較大,剛開始怎麼都不知道問題出在哪裡。直到我用一個3 3的小數據測試時,才發現問題的本質所在。浪費了半天的時間,不過總算搞明白了。 學的不夠踏實,以此警戒所有的初學者: ...
前言
array,顧名思義,數組,就是存儲數字、處理數字的一種數據結構。今天在將list轉換為array時,遇到了一個問題,數據量比較大,剛開始怎麼都不知道問題出在哪裡。直到我用一個3*3的小數據測試時,才發現問題的本質所在。浪費了半天的時間,不過總算搞明白了。
學的不夠踏實,以此警戒所有的初學者:多思考,遇到問題時從小數據入手測試!
說正事兒
1、list 轉換為 array:
- list里的變數全是數值型時,array里也全是數值型。
- list里的變數既有數值型又有字元串類型時(即使只有一個元素是字元串型),array里就全都是字元串型。
因此,將含有字元串的list轉換為array後,沒有實際的價值,因為字元串型的變數無法像數字一樣進行算術運算。
如,求均值,這一點恰恰就是出錯的源頭:
- 不含字元串型:
- 包含字元串型(出錯):
2、 二維列表 list 不能按列截取,只能按行截取;二維數組 array可以按列截取數據,也可以按行截取
3、刪除元素時,list和array都不能按列刪除(想要刪除某一列,就要遍歷全部數據),只能逐元素刪除。因此,如果數據量比較大,可以考慮生成新的數據。也可以考慮從 pandas DataFrame 中刪除列。