在pandas数据框中,如果年份相邻,可以使用diff()
函数计算每个元素与前一个元素的差值。通过比较差值是否为1,可以确定相邻的年份。然后可以使用布尔索引选择相应的行。
以下是按组选择行的示例代码:
import pandas as pd
# 创建示例数据框
data = {'年份': [2010, 2011, 2012, 2014, 2015, 2016],
'数值': [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(data)
# 计算年份差值
diff = df['年份'].diff()
# 选择年份相邻的行
adjacent_rows = df[diff == 1]
print(adjacent_rows)
上述代码中,首先创建了一个示例的数据框df
,其中包含了两列数据:年份和数值。然后通过diff()
函数计算了年份列的差值,得到了一个新的Series对象diff
。接着,使用布尔索引diff == 1
选择了年份差值为1的行,即相邻的行,保存到了adjacent_rows
中。最后打印输出了选择的结果。
这种方法可以帮助我们在数据框中按组选择年份相邻的行。在实际应用中,可以根据具体需求进行相应的扩展和适应。
领取专属 10元无门槛券
手把手带您无忧上云