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

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

如何使用 apply 將列作為參數(shù)傳遞給類

如何使用 apply 將列作為參數(shù)傳遞給類

翻翻過去那場雪 2021-09-11 18:25:18
class Movie:    def __init__(self, title, imdb, critic, quote):        self.title = title        self.imdb = imdb        self.critic = critic        self.quote = quote    def mashup(self):            x =self.title + self.imdb + self.critic + self.quote        return self.xdf['concat'] = df.apply(Movie,axis=1)我希望看到的結(jié)果是將每一列串聯(lián)為數(shù)據(jù)框中的新列。問題是 Movie 沒有收到預(yù)期數(shù)量的參數(shù),我沒有調(diào)用 mashup 方法,但不確定出了什么問題。TypeError: ("__init__() missing 3 required positional arguments: 'imdb', 'critic', and 'quote'", 'occurred at index 0')
查看完整描述

2 回答

?
守候你守候我

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

你為什么要使用類來做到這一點?如果您的數(shù)據(jù)在熊貓數(shù)據(jù)框中,您可以簡單地執(zhí)行以下操作:

df['concat'] = df['title'] + df['imdb'] + df['critic'] + df['quote']


查看完整回答
反對 回復(fù) 2021-09-11
?
烙印99

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

一般來說,直接分配計算序列是清晰有效的。如果您希望使用顯式函數(shù)進(jìn)行系列計算,那么pipe您的數(shù)據(jù)框到您的函數(shù):


df = pd.DataFrame(np.arange(15).reshape((5, 3)))


def summer(x):

    return x[0] + x[1] + x[2]


df['sum_1'] = df[0] + df[1] + df[2]

df['sum_2'] = df.pipe(summer)


print(df)


    0   1   2  sum_1  sum_2

0   0   1   2      3      3

1   3   4   5     12     12

2   6   7   8     21     21

3   9  10  11     30     30

4  12  13  14     39     39

通常不需要將單個列傳遞給您的函數(shù)。什么是不推薦的是通過一個Python級逐行循環(huán)apply:


df['sum_3'] = df.apply(lambda x: x[0] + x[1] + x[2], axis=1)


查看完整回答
反對 回復(fù) 2021-09-11
  • 2 回答
  • 0 關(guān)注
  • 181 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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