亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

采取在“錯誤無法執行與靈活類型減少” Python中讀取數據的手段

采取在“錯誤無法執行與靈活類型減少” Python中讀取數據的手段

瀟瀟雨雨 2021-03-29 11:51:57
我試圖從文本文件中讀取數據并取這些數據的均值,但是我得到的錯誤是無法使用靈活類型執行減少操作。我不知道為什么,有人可以幫忙。這是我的代碼。right=open('01phi.txt','r').readlines()  right=str(right) a=np.asarray(right)b=np.mean(a)print b編輯:我現在正在使用此行, right=np.genfromtxt('01phi.txt') 但它會產生此錯誤,Line #10 (got 3 columns instead of 7)因為數組中的此行不那么大。使用genfromtxt導入numpy中缺少值的csv數據時,此鏈接告訴我如何忽略底線或如何填充底線,但是這兩種方法都會壓低平均值。有辦法解決這個問題嗎?
查看完整描述

2 回答

?
肥皂起泡泡

TA貢獻1829條經驗 獲得超6個贊

right是一個字符串。np.asarray(some_string)返回帶有字符串dtype的數組。NumPy的np.mean函數在傳遞字符串dtype的數組時引發TypeError。


In [29]: np.asarray('1 2 3')

Out[29]: 

array('1 2 3', 

      dtype='|S5')

In [31]: np.mean(a)

TypeError: cannot perform reduce with flexible type

而是使用np.genfromtxt或np.loadtxt從文本文件加載數組:


a = np.genfromtxt(filename, ...)


查看完整回答
反對 回復 2021-04-05
?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

有一種方法可以將類似文件的自定義對象np.genfromtxt傳遞給。您可以使用類似的方法來處理短行并返回全行。但是,我認為這比您在此處真正想要使用的代碼更多。我認為編寫一個預處理腳本將您的舊數據文件重寫(通過將零添加到丟失的列中)到一個可以被np.genfromtxt讀取的腳本中會更容易

查看完整回答
反對 回復 2021-04-05
  • 2 回答
  • 0 關注
  • 247 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號