,可以通过以下步骤实现:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 2, 3, 4, 4, 5], 'B': [1, 2, 2, 3, 4, 4, 5]})
mask = (df['B'].shift() == df['B']) | (df['B'].shift(-1) == df['B'])
df = df[~mask]
完整的代码如下所示:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 2, 3, 4, 4, 5], 'B': [1, 2, 2, 3, 4, 4, 5]})
mask = (df['B'].shift() == df['B']) | (df['B'].shift(-1) == df['B'])
df = df[~mask]
这样,Dataframe中在特定列中上下行具有相同值的行就被删除了。
对于这个问题,可以使用pandas库中的shift()函数来比较特定列的上一行和下一行的值,并使用布尔索引来筛选出不满足条件的行。这种方法适用于需要删除在特定列中连续出现相同值的行的情况,例如数据清洗、数据预处理等场景。
腾讯云相关产品和产品介绍链接地址:
请注意,以上提到的腾讯云产品仅作为示例,其他云计算品牌商也提供类似的产品和服务。
领取专属 10元无门槛券
手把手带您无忧上云