DataFrame.isin(self, values) [source]
DataFrame中的每个元素是否包含在值中。
参数: | values : 如果所有标签都匹配,则结果仅在某个位置为 如果 如果 如果值是 |
返回值: | DataFrame 布尔值的DataFrame, 显示DataFrame中的每个元素是否包含在值中。 |
例子
1)检查 DataFrame 中的某些值
import pandas as pd
# 创建一个示例 DataFrame
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]}
df = pd.DataFrame(data)
# 定义检查的值
values = [2, 4, 6, 8]
# 使用 isin 检查值是否在 DataFrame 中
result = df.isin(values)
print(result)
2)检查 DataFrame 中的列是否包含在不同的集合中
import pandas as pd
# 创建示例数据框
data = {'A': [1, 2, 3, 4], 'B': [4, 5, 6, 7]}
df = pd.DataFrame(data)
# 定义每列的检查值
values = {'A': [2, 4], 'B': [5, 7]}
# 使用 isin 检查每列的值是否在对应的集合中
result = df.isin(values)
print(result)
3)检查 Series 中的值
import pandas as pd
# 创建一个 Series
s = pd.Series([1, 2, 3, 4])
# 定义检查的值
values = [2, 4]
# 使用 isin 检查值是否在 Series 中
result = s.isin(values)
# 打印结果
print(result)
4)使用示例
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'num_legs': [2, 4], 'num_wings': [2, 0]},
index=['falcon', 'dog'])
# 输出 DataFrame
print("DataFrame df:")
print(df)
# 使用字典,分别检查每列中的元素是否为指定的值
result_dict = df.isin({'num_wings': [0, 3]})
print("\n使用字典检查每列中的元素是否为指定的值 (num_wings 列检查 0 或 3):")
print(result_dict)
# 使用另一个 DataFrame 检查匹配的元素
other = pd.DataFrame({'num_legs': [8, 2], 'num_wings': [0, 2]},
index=['spider', 'falcon'])
print("\n另一个 DataFrame (other):")
print(other)
result_df = df.isin(other)
print("\n使用 DataFrame (other) 检查匹配的元素:")
print(result_df)