panda在循环中选择下一列标题



在遍历pandas数据帧的列的循环中,我试图访问下一个列标题。

for cols in data.columns:
if data.columns.get_loc(cols) < len(data.columns):  # skip last column of data
count = data.groupby([cols, cols+1]).size()  # create new df and how many times the two columns occur

但是cols+1给了我一个错误。这是因为cols返回标题名称,所以不能+1一个字符串,但在这样的循环中,获得下一列标题的最佳方法是什么?

您可以在列上枚举

for col_index, cols in enumerate(data.columns):
if col_index+1 < len(data.columns):  # skip last column of data
count = data.groupby([cols,data.columns[col_index+1]]).size()  # create new df and how many times the two columns occur
for col_idx in range(len(data.columns)-1):
if data.columns.get_loc(data.columns[col_idx]) < len(data.columns): 
count = data.groupby([col_idx, col_idx+1]).size()

最新更新