亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

在 pandas 中應用函數

在 pandas 中應用函數

慕后森 2024-01-16 15:11:33
當我運行以下命令時import pandas as pddef my_func(E, I):    return E * Id = {'E': [1, 1], 'I': [2, 2]}df = pd.DataFrame(data=d)df['S'] = df.apply(lambda x: my_func(x['E'], x['I']),axis=1).map(lambda x: x[0]) 我收到以下錯誤Traceback (most recent call last):  File "U:\GSY\scipt.py", line 14, in <module>    df['S'] = df.apply(lambda x: my_func(x['E'], x['I']),axis=1).map(lambda x: x[0])  File "C:\Users\gsy.LSH\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\pandas\core\series.py", line 3630, in map    new_values = super()._map_values(arg, na_action=na_action)  File "C:\Users\gsy.LSH\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\LocalCache\local-packages\Python38\site-packages\pandas\core\base.py", line 1145, in _map_values    new_values = map_f(values, mapper)  File "pandas\_libs\lib.pyx", line 2329, in pandas._libs.lib.map_infer  File "U:\GSY\script.py", line 14, in <lambda>    df['S'] = df.apply(lambda x: my_func(x['E'], x['I']),axis=1).map(lambda x: x[0])TypeError: 'int' object is not subscriptable我 100% 確信這在過去是有效的,因為我已經廣泛使用了它。有誰知道為什么會發生這種情況?
查看完整描述

1 回答

?
慕虎7371278

TA貢獻1802條經驗 獲得超4個贊

最后把最后一張地圖扔掉就可以了。該函數正在返回一個列表,而您的最后一個映射函數正在嘗試獲取列表的第一個元素。


import pandas as pd


def my_func(E, I):

    return E * I


d = {'E': [1, 1], 'I': [2, 2]}

df = pd.DataFrame(data=d)

df['S'] = df.apply(lambda x: my_func(x['E'], x['I']),axis=1)

或者,但根據此處的注釋,您可以將 my_func 的值作為列表返回:


import pandas as pd


def my_func(E, I):

    return [E * I]


d = {'E': [1, 1], 'I': [2, 2]}

df = pd.DataFrame(data=d)

df['S'] = df.apply(lambda x: my_func(x['E'], x['I']),axis=1).map(lambda x: x[0])


查看完整回答
反對 回復 2024-01-16
  • 1 回答
  • 0 關注
  • 187 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號