当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas dataframe.eval()用法及代码示例


Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统。 Pandas是其中的一种,使导入和分析数据更加容易。

Pandas dataframe.eval()函数用于在调用 DataFrame 实例的上下文中评估表达式。该表达式在 DataFrame 的列上求值。

用法: DataFrame.eval(expr, inplace=False, **kwargs)

参数:
expr:要计算的表达式字符串。
inplace:如果表达式包含一个赋值,则是否就地执行操作并更改现有的DataFrame。否则,新
返回DataFrame。
kwargs:有关query()接受的关键字参数的完整详细信息,请参见eval()的文档。

返回:ret:ndarray,标量或pandas对象

范例1:采用eval()函数用于评估 DataFrame 中所有列元素的总和,并将结果列插入 DataFrame 中。

# importing pandas as pd 
import pandas as pd 
  
# Creating the dataframe  
df=pd.DataFrame({"A":[1,5,7,8], 
                 "B":[5,8,4,3], 
                 "C":[10,4,9,3]}) 
  
# Print the first dataframe 
df

让我们评估所有列的总和并将结果列添加到 DataFrame

# To evaluate the sum over all the columns 
df.eval('D = A + B+C', inplace = True) 
  
# Print the modified dataframe 
df

输出:


范例2:采用eval()函数用于评估 DataFrame 中任何两个列元素的总和,并将结果列插入 DataFrame 中。 DataFrame 具有NaN值。

注意:任何表达式都不能超过NaN值。因此对应的单元格将是NaN太。

# importing pandas as pd 
import pandas as pd 
  
# Creating the dataframe 
df=pd.DataFrame({"A":[1,2,3], 
                 "B":[4,5,None], 
                 "C":[7,8,9]}) 
  
# Print the dataframe 
df

我们来评估列“B”和“C”的总和。

# To evaluate the sum of two columns in the dataframe 
df.eval('D = B + C', inplace = True) 
  
# Print the modified dataframe 
df

输出:

请注意,结果列“ D”具有NaN最后一行的值,因为评估中使用的相应单元格是NaN细胞。



相关用法


注:本文由纯净天空筛选整理自Shubham__Ranjan大神的英文原创作品 Python | Pandas dataframe.eval()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。