用法:
DataFrame.eval(expr, inplace=False, **kwargs)
評估說明對 DataFrame 列的操作的字符串。
僅對列進行操作,而不對特定的行或元素進行操作。這允許
eval
運行任意代碼,如果您將用戶輸入傳遞給此函數,這可能會使您容易受到代碼注入的影響。- ndarray、標量、pandas 對象或無
如果
inplace=True
,則為評估結果或 None 。
參數:
返回:
注意:
有關更多詳細信息,請參閱
eval()
的 API 文檔。有關詳細示例,請參閱使用 eval 提高性能。例子:
>>> df = pd.DataFrame({'A':range(1, 6), 'B':range(10, 0, -2)}) >>> df A B 0 1 10 1 2 8 2 3 6 3 4 4 4 5 2 >>> df.eval('A + B') 0 11 1 10 2 9 3 8 4 7 dtype:int64
盡管默認情況下原始 DataFrame 未修改,但允許分配。
>>> df.eval('C = A + B') A B C 0 1 10 11 1 2 8 10 2 3 6 9 3 4 4 8 4 5 2 7 >>> df A B 0 1 10 1 2 8 2 3 6 3 4 4 4 5 2
使用
inplace=True
修改原始DataFrame。>>> df.eval('C = A + B', inplace=True) >>> df A B C 0 1 10 11 1 2 8 10 2 3 6 9 3 4 4 8 4 5 2 7
可以使用 multi-line 表達式分配多個列:
>>> df.eval( ... ''' ... C = A + B ... D = A - B ... ''' ... ) A B C D 0 1 10 11 -9 1 2 8 10 -6 2 3 6 9 -3 3 4 4 8 0 4 5 2 7 3
相關用法
- Python pandas.DataFrame.ewm用法及代碼示例
- Python pandas.DataFrame.expanding用法及代碼示例
- Python pandas.DataFrame.eq用法及代碼示例
- Python pandas.DataFrame.explode用法及代碼示例
- Python pandas.DataFrame.empty用法及代碼示例
- Python pandas.DataFrame.equals用法及代碼示例
- Python pandas.DataFrame.dot用法及代碼示例
- Python pandas.DataFrame.apply用法及代碼示例
- Python pandas.DataFrame.combine_first用法及代碼示例
- Python pandas.DataFrame.cumsum用法及代碼示例
- Python pandas.DataFrame.rename用法及代碼示例
- Python pandas.DataFrame.to_numpy用法及代碼示例
- Python pandas.DataFrame.dtypes用法及代碼示例
- Python pandas.DataFrame.cummin用法及代碼示例
- Python pandas.DataFrame.truncate用法及代碼示例
- Python pandas.DataFrame.sparse.from_spmatrix用法及代碼示例
- Python pandas.DataFrame.add_prefix用法及代碼示例
- Python pandas.DataFrame.to_json用法及代碼示例
- Python pandas.DataFrame.convert_dtypes用法及代碼示例
- Python pandas.DataFrame.assign用法及代碼示例
注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.DataFrame.eval。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。