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

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

運(yùn)行相同的代碼但使用兩個(gè)不同的數(shù)據(jù)集(輸入)

運(yùn)行相同的代碼但使用兩個(gè)不同的數(shù)據(jù)集(輸入)

慕虎7371278 2023-10-06 11:13:45
我在 JupyterLab 中有一段代碼,其中包含分布在多個(gè)單元格中的多個(gè)函數(shù)。第一個(gè)函數(shù)生成一個(gè)數(shù)據(jù)集,該數(shù)據(jù)集將在其后的所有其他函數(shù)中使用。我要做的就是運(yùn)行相同的代碼兩次,但修改其中一個(gè)函數(shù)。所以它看起來像這樣:data_generating_function() # this function should only be ran once so it generates the same dataset for both trials function_1() # this is the function that is to be modified once, so there are two version of this functionfunction_2() # this function and all functions below it stay the same but should be ran twicefunction_3()function_4()function_5()所以我會(huì)運(yùn)行data_generating_function()一次并生成數(shù)據(jù)集。然后我會(huì)運(yùn)行一個(gè)版本function1()及其下面的所有函數(shù),然后我會(huì)運(yùn)行另一個(gè)版本function1()及其下面的所有其他函數(shù)。實(shí)施這個(gè)的好方法是什么?顯然,我可以復(fù)制代碼并僅更改一些函數(shù)名稱,我也可以將其全部放入一個(gè)單元格中并創(chuàng)建一個(gè) for 循環(huán)。然而,是否有更好的方法可以理想地保存多個(gè)細(xì)胞呢?謝謝
查看完整描述

3 回答

?
繁花如伊

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

您應(yīng)該盡可能避免修改或直接迭代函數(shù)。在這種情況下,最好的辦法是添加一個(gè)布爾參數(shù)來function1指定要運(yùn)行的函數(shù)版本。它看起來像這樣:


def function1(isFirstTime):

  if isFirstTime:

    # do stuff the first time

    pass

  else:

    # do stuff the second time

    pass

然后您可以迭代這些函數(shù):


data_generating_function()

for b in (True, False):

  function1(b)

  function2()

  function3()

  # ...


查看完整回答
反對(duì) 回復(fù) 2023-10-06
?
隔江千里

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

只需迭代第一個(gè)函數(shù)的兩個(gè)選擇:

data_generating_function() 
for func1 in (function1a, function1b):
    func1()
    function_2()
    function_3()
    function_4()
    function_5()


查看完整回答
反對(duì) 回復(fù) 2023-10-06
?
哈士奇WWW

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

如果我誤解了這個(gè)問題,我深表歉意,但你能不能執(zhí)行以下操作:


單元格 1:


# define all functions

單元 2:


dataset = data_generating_function()

單元 3:


# Run version 1 of function 1 on dataset

result_1_1 = function_1_v1(dataset)

result_2_1 = function_2(result_1_1)

result_3_1 = function_3(result_2_1)

function_4(result_3_1)

單元 4:


# Run version 2 of function 1 on dataset

result_1_2 = function_1_v2(dataset)

result_2_2 = function_2(result_1_2)

result_3_2 = function_3(result_2_2)

function_4(result_3_2)

該解決方案假設(shè):


您定義帶有返回值的函數(shù)

傳遞結(jié)果并不“昂貴”

如果不是后者,您也可以將結(jié)果保留在文件中。


為了減少 function_1 中的代碼重復(fù),您可以添加一個(gè)在兩個(gè)版本之間切換的參數(shù)。


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

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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