熊猫在循环中选择下一列标题

我试图在循环遍历 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 一个字符串,但是在这样的循环中获取下一列标题的最佳方法是什么?


SMILET
浏览 142回答 2
2回答

慕田峪4524236

您可以枚举列for&nbsp;col_index,&nbsp;cols&nbsp;in&nbsp;enumerate(data.columns):&nbsp; &nbsp;&nbsp;&nbsp;if&nbsp;col_index+1&nbsp;<&nbsp;len(data.columns):&nbsp;&nbsp;#&nbsp;skip&nbsp;last&nbsp;column&nbsp;of&nbsp;data &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count&nbsp;=&nbsp;data.groupby([cols,data.columns[col_index+1]]).size()&nbsp;&nbsp;#&nbsp;create&nbsp;new&nbsp;df&nbsp;and&nbsp;how&nbsp;many&nbsp;times&nbsp;the&nbsp;two&nbsp;columns&nbsp;occur

长风秋雁

for&nbsp;col_idx&nbsp;in&nbsp;range(len(data.columns)-1): &nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;data.columns.get_loc(data.columns[col_idx])&nbsp;<&nbsp;len(data.columns):&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count&nbsp;=&nbsp;data.groupby([col_idx,&nbsp;col_idx+1]).size()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python