要比较Python中的dataframe两列是否完全相同,可以使用equals()函数。该函数返回一个布尔值,如果两列完全相同,则返回True,否则返回False。以下是一个示例代码:
import pandas as pd
df = pd.DataFrame({'列1': [1, 2, 3], '列2': [1, 2, 4]})
if df['列1'].equals(df['列2']):
print("两列完全相同")
else:
print("两列不完全相同")
if all(df['A列'] == df['B列']):
print(True)
else:
print(False)
在上面的示例中,我们首先创建了一个具有两列的示例dataframe,然后使用equals()
函数比较这两列是否完全相同。由于这两列不完全相同(最后一个元素不同),因此输出为“两列不完全相同”。
希望这可以帮助您比较Python中的dataframe两列是否相同。
data原始数据:
data[map(lambda x:datetime.date(x.year-1,x.month,x.day),data['report_date'])==data['date_1y_ago']]
company_id signal_code_x signal_value_x report_date signal_code_y signal_value_y report_date_last date_1y_ago
0 2154888 r_
获取一个excel的所有sheetname:
xl = pd.ExcelFile( path + f + hzm )#获取一个excel的所有sheetname
for i in xl.sheet_names:
print(i)
在官方文档中:pandas.testing.assert_frame_equal — pandas 1.3.5 documentation
介绍了可以使用assert_frame_equal()函数来比价两个DataFrame是否完全一样,包括数值和数据类型。如果不一样,会显示哪列或哪行不一样,比价方便。
assert_frame_equal(my_processed_df, processed_df)
另外,补充一点,将dataframe中的其他数据类型转为int64的方式:
processe
DataFrame.assign(**kwargs)
利用现有的列创建新列,如:df.assign(col3= (df['col1'] / df['col2'])利用第1列和第2列构建一个新的第3列)
DataFrame.compare(other[, align_axis, …])
与另一个DataFrame进行比较,并显示差异
DataFra