看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gr99123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
(编码题)你有两个 pandas DataFrame,分别如下:
import pandas as pd
df1 = pd.DataFrame({
'A': [1, 2, 3],
'B': [10.0, 20.0, 30.0]
})
df2 = pd.DataFrame({
'A': [1, 2, 3],
'B': [10, 20, 30]
})
df3 = pd.DataFrame({
'A': [1, 2, 3],
'B': [10.0, 20.0, 40.0]
})
请使用 pandas 的 equals()
方法完成以下任务:
df1
和 df2
是否相等,并说明原因。df1
和 df3
是否相等,并说明原因。要求:
equals()
方法进行判断。import pandas as pd
# 创建 DataFrame
df1 = pd.DataFrame({
'A': [1, 2, 3],
'B': [10.0, 20.0, 30.0]
})
df2 = pd.DataFrame({
'A': [1, 2, 3],
'B': [10, 20, 30]
})
df3 = pd.DataFrame({
'A': [1, 2, 3],
'B': [10.0, 20.0, 40.0]
})
# 任务 1:判断 df1 和 df2 是否相等
print("任务 1:df1 和 df2 是否相等?", df1.equals(df2))
# 任务 2:判断 df1 和 df3 是否相等
print("任务 2:df1 和 df3 是否相等?", df1.equals(df3))
任务 1:df1 和 df2 是否相等? True
任务 2:df1 和 df3 是否相等? False
任务 1:判断 df1
和 df2
是否相等
df1.equals(df2)
返回 True
。虽然 df2['B']
在定义时使用整数(如 10
),pandas 自动将其转换为 float64
,与 df1['B']
的数据类型一致。equals()
方法检查列名、数据类型和值是否相同,因此 df1
和 df2
相等。
任务 2:判断 df1
和 df3
是否相等
df1.equals(df3)
返回 False
,因为 df3['B']
的值 [10.0, 20.0, 40.0]
与 df1['B']
的值 [10.0, 20.0, 30.0]
在最后一个元素不同。equals()
方法要求值完全相同。
equals()
方法检查列名、索引、数据类型和值是否一致。10.0
)和整数(如 10
)在 pandas 中可能被视为相同类型(float64
)。(完)
更新时间:2025-08-16 17:38:59 标签:pandas python equals