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

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

“axis”屬性在下面的代碼中如何工作?

“axis”屬性在下面的代碼中如何工作?

波斯汪 2023-06-27 14:39:07
這段代碼是用 Python 編寫的。Pandas 數(shù)據(jù)框名稱是“train”,數(shù)據(jù)框中的列名稱是帶有浮動值的“Age”和帶有一些分類數(shù)字的“Pclass”。代碼:請找到以下代碼:def impute_age(cols):    Age = cols[0]    Pclass = cols[1]        if pd.isnull(Age):        if Pclass == 1:            return 37        elif Pclass == 2:            return 29        else:            return 24    else:        return Agetrain['Age'] = train[['Age','Pclass']].apply(impute_age,axis=0)這里“年齡”列變成了 NAN。我不明白軸列是如何工作的,“年齡”列中的所有記錄都變成了 NAN。
查看完整描述

3 回答

?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個贊

Axis 代表您想要指向的軸,0 表示行,1 表示列。因此,在此示例中,您在 Age 和 P 類列的行上使用 impute_age 函數(shù)。


查看完整回答
反對 回復(fù) 2023-06-27
?
慕田峪4524236

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

這是因?yàn)槟诹卸皇切兄袘?yīng)用了該函數(shù)。


例子:


data = pd.DataFrame([[np.NaN, 1], [np.NaN, 2], [np.NaN, 1]], columns=["age", "pclass"])

print(data)

輸出


     age     pclass

 0   NaN      1

 1   NaN      2

 2   NaN      1

軸 = 0


 data[['age','pclass']].apply(print, axis=0)

輸出


0    None

1    None

2    None

Name: age, dtype: object

0    1

1    2

2    1

Name: pclass, dtype: object


//Iterate through columns

軸 = 1


 data[['age','pclass']].apply(print, axis=1)

輸出


 age       None

pclass       1

Name: 0, dtype: object

age       None

pclass       2

Name: 1, dtype: object

age       None

pclass       1

Name: 2, dtype: object


//Iterate through the row 


查看完整回答
反對 回復(fù) 2023-06-27
?
慕萊塢森

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

axis 屬性意味著您沿著該軸應(yīng)用函數(shù):


       column1 column2

      +-------+---------+

row1  |       |         |  ----> axis1

      +-------+---------+

row2  |       |         |

      +-------+---------+

          |

          V

       axis 0

如果您考慮這樣的函數(shù):


def sum(cols):

    s = 0

    for i in cols:

        s +=i

    return s

并將其應(yīng)用到數(shù)據(jù)框 df:


total_sum = df.apply(sum, axis = 0)

它將采用第一列 1 并按照上面草圖中箭頭(軸 0)的方向逐行應(yīng)用函數(shù)。接下來它將采用下一個column2,依此類推。最后您將得到每列的總和。


對于 axis = 1,它將采用 row1 并按列應(yīng)用該函數(shù)。然后將需要 row2 等等。結(jié)果,您將獲得每行的總和。


在您的軸等于 0 的示例中,它將“年齡”列作為系列傳遞給您的 impute_age 函數(shù)。然后,您僅訪問該系列的前兩個值(行)(cols[0] 和 cols[1])。下一欄也會發(fā)生同樣的情況。那不是你想要的。


相反,您希望將每一行傳遞給函數(shù)并訪問列,因此您必須指定 axis = 1。


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

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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