91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Python中使用numpy創建空數組

發布時間:2021-05-25 18:24:13 來源:億速云 閱讀:445 作者:Leah 欄目:開發技術

怎么在Python中使用numpy創建空數組?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

一、問題描述:

有一個shape為(308, 2)的二維數組,以及單獨的一個數字,需要保存到csv文件中,這個單獨的數字讓其保存到第3列第一行的位置。

二、具體的實現:

首先要想把一個(308, 2)的二維數組和一個數字給拼接起來,直接拼接沒辦法實現,因為行數和列數都不同的兩個ndarry是無法拼接的(此處按照目前我學的理解,是無法直接拼接的,如果可以的話,麻煩評論一下)。

然后我首先想到的解決方法就是先建一個(308,1)的二維數組,然后令這個二維數組的第一個元素設置成那個數字,然后進行拼接,保存。

為使數據可以顯示完全,以僅以3行數據為例:

>>> a = np.ones((3,2))
>>> b = 0.2
>>> _b = np.empty((3,1))
>>> _b[0, 0] = b
>>> c = np.c_[a, _b]
>>> print(c)
[[1.00000000e+000 1.00000000e+000 2.00000000e-001]
 [1.00000000e+000 1.00000000e+000 2.12199579e-313]
 [1.00000000e+000 1.00000000e+000 2.54639495e-313]]
>>>

但是這樣,我把結果保存到文件時,第3列的除第一行,其他的行是有數據的,我不想讓它顯示數據。
也就是empty這個函數只是創建一個未初始化的數組,實際上里面的數值都是垃圾值。

那么如何去實現視覺上沒有數據呢,其實利用空的字符串就可以了

所以就通過np.ones設置dtype為str,此時生成的是元素都為空字符串的數組,(具體的原因還不清楚),然后此時若直接設置第一行的元素為某個值,是不行的,會自動變為'0‘,只有在拼接之后,然后再給它賦值才可以,這個地方我不是很理解,但是結果是正確的。

三、完整代碼:

y_true = np.ones((3, 1), dtype=np.int)
y_pred = np.ones((3, 1), dtype=np.int)
y = np.c_[y_true, y_pred]

accuracy = np.zeros(shape=(y_true.shape[0], 1), dtype=np.str)

# 此時若設置accuracy[0, 0] = '0.89',最終accuracy[0, 0]存的是'0',具體原因還不清楚

res = np.c_[y, accuracy]  # 先拼接起來
res[0, 2] = '0.89'  # 然后再設置就可以了

res = pd.DataFrame(res, columns=['y_true', 'y_pred', 'accuracy'])
res.to_csv('1.csv')  # 保存到文件中

怎么在Python中使用numpy創建空數組

從文件中讀取的時候,直接讀出來,空白的地方被賦值為nan

a = pd.read_csv('1.csv', usecols=(1, 2, 3))
a = a.values
print(a, type(a), a.dtype)

怎么在Python中使用numpy創建空數組

關于np.nan需要注意的地方如下:

  • np.nan不是空對象。

  • 對列表中的nan進行操作時不能用"==np.nan"來判斷。只能用np.isnan()來操作。

  • np.nan的數據類型是float。

import numpy as np
 
np.nan == np.nan
Out[3]: False
 
aa = np.array([1,2,3,np.nan,np.nan,4,5,np.nan])
aa
Out[5]: array([  1.,   2.,   3.,  nan,  nan,   4.,   5.,  nan])
 
aa[aa==np.nan] = 100  #錯誤方式
aa
Out[7]: array([  1.,   2.,   3.,  nan,  nan,   4.,   5.,  nan])
 
aa[np.isnan(aa)] = 100  #對nan操作的正確方式
aa
Out[9]: array([   1.,    2.,    3.,  100.,  100.,    4.,    5.,  100.])
 
type(np.nan)
Out[10]: float

python有哪些常用庫

python常用的庫:1.requesuts;2.scrapy;3.pillow;4.twisted;5.numpy;6.matplotlib;7.pygama;8.ipyhton等。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武陟县| 霍林郭勒市| 金湖县| 北票市| 华宁县| 屯昌县| 和政县| 婺源县| 香港| 东乡族自治县| 民乐县| 工布江达县| 南昌县| 成安县| 娄底市| 清原| 宜黄县| 开阳县| 漳平市| 泸州市| 隆林| 沿河| 台南县| 常山县| 洪洞县| 大洼县| 乌兰浩特市| 耒阳市| 阆中市| 济阳县| 丹东市| 工布江达县| 普定县| 肇源县| 宜兰县| 盐池县| 石屏县| 周口市| 洪洞县| 沁阳市| 玉门市|