簡體   English   中英

應用 function Pandas DataFrame 無 Lambda 參數

[英]Apply function Pandas DataFrame without Lambda paramater

df = pd.DataFrame([["Test", "Test123"]] * 3, columns=['A', 'B'])


def shorterstring(string, count): 
    return string[0:-count]


df["A"].apply(lambda x: x[0:2])
Out[614]: 
0    Te
1    Te
2    Te

df["A"].apply(shorterstring(df["A"], 2))
TypeError: 'Series' object is not callable

我想在帶有字符串的列上應用自定義 function 。 我設法讓它與 lambda 表達式一起使用,但是當我想應用 function 時它不起作用。 誰能幫助我如何做到這一點?

使用functools.partial功能:

In [128]: from functools import partial                                                                     

In [129]: df["A"].apply(partial(shorterstring, count=2))                                                    
Out[129]: 
0    Te
1    Te
2    Te
Name: A, dtype: object

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM