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

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

在 Python 中創(chuàng)建具有隨機(jī)文件路徑的 CSV 文件

在 Python 中創(chuàng)建具有隨機(jī)文件路徑的 CSV 文件

白衣非少年 2021-10-12 15:23:10
我有很多 csv 文件,包括我制作的模擬數(shù)據(jù)。我通過將所有模擬輸出 csv 文件作為文件路徑放入另一個(gè)單個(gè) csv 文件中,將它們提供給深度學(xué)習(xí)算法。但是,我需要兩個(gè) csv 文件,其中一個(gè)包含 20% 的輸出 csv 文件路徑,另一個(gè)包含剩余的 80%。我有一個(gè)算法可以做到這一點(diǎn),但它不是隨機(jī)的;with open('C:\\train.csv', 'w') as outf:  print('x:data,y:label', file=outf)  for i in range(80):      print('./1/a_%s.csv, 1' % (i + 21), file=outf)with open('C:\\test.csv', 'w') as outf:  print('x:data,y:label', file=outf)  for i in range(20):      print('./1/a_%s.csv, 1' % (i + 1), file=outf)當(dāng)我這樣做時(shí),我在其中一個(gè) csv 文件中獲得了 1-20 個(gè)文件,在另一個(gè)中獲得了 21 到 100 個(gè)文件。但是,我希望它們是隨機(jī)的。所以也許如果我總共有 10 個(gè)樣本,一個(gè)文件中有 3 個(gè)和 7 個(gè)(隨機(jī)),另一個(gè)文件中有其余的。有沒有辦法做到這一點(diǎn)?
查看完整描述

2 回答

?
智慧大石

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

也許您可以嘗試制作索引數(shù)組并首先對(duì)其進(jìn)行洗牌。然后將前 80 個(gè)索引用于第一個(gè) CSV,其余 (20) 個(gè)用于第二個(gè):


from random import shuffle    


indices = list(range(1,101))

shuffle(indices)


with open('C:\\train.csv', 'w') as outf:

    print('x:data,y:label', file=outf)


    for i in indices[:80]:

        print('./1/a_%s.csv, 1' % i, file=outf)


with open('C:\\test.csv', 'w') as outf:

    print('x:data,y:label', file=outf)


    for i in indices[80:]:

        print('./1/a_%s.csv, 1' % i, file=outf)


查看完整回答
反對(duì) 回復(fù) 2021-10-12
?
肥皂起泡泡

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

這是機(jī)器學(xué)習(xí)中的常見問題。scikit-learn有幾個(gè)工具可以處理這個(gè)問題,例如train_test_split


from sklearn.model_selection import train_test_split


indices = list(range(1, 101))

i_a, i_b = train_test_split(indices, train_size=0.8, test_size=0.2)

現(xiàn)在您可以像原始代碼一樣迭代i_a(80 個(gè)隨機(jī)索引)和i_b(20 個(gè)隨機(jī)索引):


with open('C:\\train.csv', 'w') as outf:

    print('x:data,y:label', file=outf)


    for i in i_a:

        print('./1/a_%s.csv, 1' % i, file=outf)


with open('C:\\test.csv', 'w') as outf:

    print('x:data,y:label', file=outf)


    for i in i_b:

        print('./1/a_%s.csv, 1' % i, file=outf)


查看完整回答
反對(duì) 回復(fù) 2021-10-12
  • 2 回答
  • 0 關(guān)注
  • 283 瀏覽
慕課專欄
更多

添加回答

舉報(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)