用法:
DataFrame.eval(expr, inplace=None, **kwargs)
評估說明 DataFrame 列上的操作的字符串。
此文檔字符串是從 pandas.core.frame DataFrame.eval 複製的。
可能存在與 Dask 版本的一些不一致之處。
僅對列進行操作,而不對特定的行或元素進行操作。這允許
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 dask.dataframe.DataFrame.eq用法及代碼示例
- Python dask.dataframe.DataFrame.explode用法及代碼示例
- Python dask.dataframe.DataFrame.applymap用法及代碼示例
- Python dask.dataframe.DataFrame.sub用法及代碼示例
- Python dask.dataframe.DataFrame.mod用法及代碼示例
- Python dask.dataframe.DataFrame.cummin用法及代碼示例
- Python dask.dataframe.DataFrame.truediv用法及代碼示例
- Python dask.dataframe.DataFrame.round用法及代碼示例
- Python dask.dataframe.DataFrame.ne用法及代碼示例
- Python dask.dataframe.DataFrame.partitions用法及代碼示例
- Python dask.dataframe.DataFrame.to_bag用法及代碼示例
- Python dask.dataframe.DataFrame.any用法及代碼示例
- Python dask.dataframe.DataFrame.itertuples用法及代碼示例
- Python dask.dataframe.DataFrame.count用法及代碼示例
- Python dask.dataframe.DataFrame.memory_usage用法及代碼示例
- Python dask.dataframe.DataFrame.describe用法及代碼示例
- Python dask.dataframe.DataFrame.to_parquet用法及代碼示例
- Python dask.dataframe.DataFrame.groupby用法及代碼示例
- Python dask.dataframe.DataFrame.fillna用法及代碼示例
- Python dask.dataframe.DataFrame.iterrows用法及代碼示例
注:本文由純淨天空篩選整理自dask.org大神的英文原創作品 dask.dataframe.DataFrame.eval。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。