DataFrame.le(self, other, axis='columns', level=None) [source]
获取小于或等于dataframe
和其他逐元素(二进制运算符le
)。
在灵活的包装器(eq,ne,le,lt,ge,gt
)中,用于比较运算符。
等效于==,=!,<=,<,> =,>
,并支持选择轴(行或列)和级别进行比较。
参数: | other : 或 任何单个或多个元素的数据结构,或类似列表的对象。 axis : { 默认为 是按索引(0或“索引”)还是按列(1或“列”)进行比较。 level : 整数或标签 在一个级别上广播, 在传递的MultiIndex级别上匹配索引值。 |
返回值: | 布尔值的 比较结果。 |
Notes
不匹配的索引将合并在一起。 NaN
值被认为是不同的(即NaN != NaN
)。
例子
1)DataFrame 与标量值(scalar)比较
import pandas as pd df = pd.DataFrame({'A': [1, 4, 3], 'B': [2, 5, 6]}) print(df.le(3)) # 判断每个元素是否 ≤ 3
2)DataFrame 与 Series 比较
import pandas as pd df = pd.DataFrame({'A': [1, 4, 3], 'B': [2, 5, 6]}) s = pd.Series([2, 4], index=['A', 'B']) print(df.le(s, axis=1)) # 按列对比
3)DataFrame 之间的比较
import pandas as pd df = pd.DataFrame({'A': [1, 4, 3], 'B': [2, 5, 6]}) df2 = pd.DataFrame({'A': [2, 3, 3], 'B': [2, 4, 6]}) print(df.le(df2))
4)DataFrame 与 NumPy 数组比较
import pandas as pd import numpy as np df = pd.DataFrame({'A': [1, 4, 3], 'B': [2, 5, 6]}) arr = np.array([[2, 2], [4, 4], [3, 6]]) print(df.le(arr))
5)与任意序列比较时,列数必须与 other 中的元素数匹配
import pandas as pd # 创建示例 DataFrame df = pd.DataFrame({'cost': [250, 150, 100], 'revenue': [100, 250, 300]}, index=['A', 'B', 'C']) # 与任意序列比较时,列数必须与 other 中的元素数匹配 print(df.le([250, 100])) # 结果: # cost revenue # A True True # B True False # C True False
6)使用 axis 控制轴(按行比较)
import pandas as pd # 创建示例 DataFrame df = pd.DataFrame({'cost': [250, 150, 100], 'revenue': [100, 250, 300]}, index=['A', 'B', 'C']) # 使用 axis 控制轴(按行比较) print(df.le([250, 250, 100], axis='index')) # 结果: # cost revenue # A True False # B True True # C True True
7)比较不同形状的 DataFrame
import pandas as pd # 创建示例 DataFrame df = pd.DataFrame({'cost': [250, 150, 100], 'revenue': [100, 250, 300]}, index=['A', 'B', 'C']) # 比较不同形状的 DataFrame other = pd.DataFrame({'revenue': [300, 250, 100, 150]}, index=['A', 'B', 'C', 'D']) print(df.le(other)) # 结果: # cost revenue # A False True # B True True # C True True # D False False
8)按级别与 MultiIndex 进行比较
import pandas as pd # 创建示例 DataFrame df = pd.DataFrame({'cost': [250, 150, 100], 'revenue': [100, 250, 300]}, index=['A', 'B', 'C']) # 按级别与 MultiIndex 进行比较 df_multindex = pd.DataFrame({'cost': [250, 150, 100, 150, 300, 220], 'revenue': [100, 250, 300, 200, 175, 225]}, index=[['Q1', 'Q1', 'Q1', 'Q2', 'Q2', 'Q2'], ['A', 'B', 'C', 'A', 'B', 'C']]) print(df.le(df_multindex, level=1)) # 结果: # cost revenue # Q1 A True True # B True True # C True True # Q2 A False True # B True False # C True False