第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

將一個(gè)大的numpy矩陣分層劃分為10個(gè)獨(dú)立的子矩陣

將一個(gè)大的numpy矩陣分層劃分為10個(gè)獨(dú)立的子矩陣

富國(guó)滬深 2024-01-04 15:33:32
我有兩個(gè) numpy 變量,包含 32000 個(gè)條目,如下所示:>>> filesarray(['GAN_0.npy', 'GAN_1.npy', 'GAN_10.npy', ..., 'GAN_822.npy',       'GAN_8220.npy', 'GAN_8221.npy'], dtype='<U13')>>> files.shape(32000,)>>> labelsarray([1, 1, 1, ..., 1, 1, 1])>>> np.unique(labels)array([0, 1])>>> labels.shape(32000,)換句話說(shuō),第一個(gè)變量是字符串的 NumPy 矩陣,而另一個(gè)變量是整數(shù)的 NumPy 矩陣。在第一個(gè)矩陣中,我有一個(gè)圖像名稱的字符串列表,在另一個(gè)矩陣中,我有一個(gè)整數(shù)作為我用來(lái)識(shí)別它們的標(biāo)簽(以名稱 GAN_ 開(kāi)頭的圖像為 1,而以名稱 RAW_ 開(kāi)頭的圖像為 0)。我想知道是否可以將這 32000 個(gè)條目分成 10 個(gè)子集,每個(gè)子集 3200 個(gè)圖像而不重復(fù),即 1600 個(gè)名稱以 RAW_ 開(kāi)頭的條目和其他 1600 個(gè)名稱以 GAN_ 開(kāi)頭的條目。圖像的名稱和標(biāo)簽被打亂,因此我不能簡(jiǎn)單地將大矩陣分成 10 個(gè)子矩陣。因此,Numpy 中是否有任何方法可以在 Python 中創(chuàng)建來(lái)自 2 個(gè)類的 10 個(gè)分層且獨(dú)立的樣本子矩陣?
查看完整描述

3 回答

?
炎炎設(shè)計(jì)

TA貢獻(xiàn)1808條經(jīng)驗(yàn) 獲得超4個(gè)贊

這是一個(gè)可能的解決方案:


arrays = [np.concatenate((g, r))

          for g, r in zip(np.array_split(files[labels==1], 10), 

                          np.array_split(files[labels==0], 10))]

此解決方案保留“GAN*”和“RAW*”文件的相對(duì)順序。此外,創(chuàng)建的數(shù)組的初始位置填充有“GAN*”文件,其余位置填充有“RAW*”文件。如果您對(duì)這種排序不滿意,您可以在創(chuàng)建每個(gè)數(shù)組后隨時(shí)對(duì)其進(jìn)行洗牌。


查看完整回答
反對(duì) 回復(fù) 2024-01-04
?
月關(guān)寶盒

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超5個(gè)贊

這是一個(gè)沒(méi)有循環(huán)的解決方案(由@Crazy Coder在其他答案的評(píng)論中建議):


labels = np.array(labels, dtype=bool)

np.split(np.vstack((files[labels],files[~labels])).T.reshape(-1,1), 10)


查看完整回答
反對(duì) 回復(fù) 2024-01-04
?
喵喵時(shí)光機(jī)

TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個(gè)贊


import numpy as np


#Read file names

file_names=np.genfromtxt('test_files.txt',dtype='str')

? ?

raw_vector=[]

gan_vector=[]


for i in range(0,file_names.shape[0]):


? ? image_name=file_names[i]


? ? #Separate RAW and GAN files

? ? if("RAW_" in image_name):

? ? ? ? raw_vector.append(image_name)


? ? if("GAN_" in image_name):

? ? ? ? gan_vector.append(image_name)

? ??

raw_vector=np.array(raw_vector)

gan_vector=np.array(gan_vector)


#Split into 10 subsets each

raw_vector_divided=np.split(raw_vector,10)

gan_vector_divided=np.split(gan_vector,10)


for j in range(0,10):

? ? x=raw_vector_divided[j]

? ? y=gan_vector_divided[j]

? ??

? ? x=x.reshape(x.shape[0],1)

? ? y=y.reshape(y.shape[0],1)

? ??

? ? #merge

? ? experiment_data=np.vstack((x,y))

? ??

? ? #Save subset as file

? ? np.savetxt( 'experiment-' + str(j+1) + '-data.txt',? experiment_data, fmt='%s')


print("finished")?


查看完整回答
反對(duì) 回復(fù) 2024-01-04
  • 3 回答
  • 0 關(guān)注
  • 186 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)