以下是一个示例代码,可以按行逐个比较字符串列与其他列:
import pandas as pd
# 创建一个示例数据框
data = {'Name': ['John', 'Amy', 'Bob'],
'Age': [25, 30, 35],
'City': ['New York', 'Los Angeles', 'Chicago']}
df = pd.DataFrame(data)
# 定义一个函数,用于按行逐个比较字符串列与其他列
def compare_strings(row):
for col in df.columns:
if isinstance(row[col], str): # 仅对字符串类型进行比较
for other_col in df.columns:
if col != other_col and isinstance(row[other_col], str): # 排除当前列和非字符串类型的列
if row[col] == row[other_col]:
print(f"{col}与{other_col}列的值相同:{row[col]}")
else:
print(f"{col}与{other_col}列的值不同:{row[col]} vs {row[other_col]}")
# 对每一行应用函数
df.apply(compare_strings, axis=1)
此代码将按行遍历数据框,然后对每一行的字符串列与其他字符串列进行比较。如果两个列的值相同,将打印出相应的信息;如果两个列的值不同,也将打印出相应的信息。请根据您的具体需求进行修改。
上一篇:按行重新排列矩阵